Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.03.2020, 13:01
Новичок на форуме
Отправить личное сообщение для Leha777 Посмотреть профиль Найти все сообщения от Leha777
 
Регистрация: 12.03.2020
Сообщений: 1

Как сделать точное наведение на изображение?
Пытаюсь сделать игру для детей, типа "Зоопарк" или что-то такое.
Пишу на javascript с библиотекой Pixi.js.
Добавляю объекты - спрайты (картинки формата png), банан в данном случае, вот так:

const banan = PIXI.Sprite.from('images/banan.png')
Картинка сделана в фотошопе, это банан а вокруг него прозрачные пиксели.
Добавляю для него события

banan.on('pointerdown', onButtonDown);
banan.on('pointerup', onButtonUp);
banan.on('pointerupoutside', onButtonUp);
banan.on('pointerover', onButtonOver);
banan.on('pointerout', onButtonOut);
app.stage.addChild(banan);

дальше функции, которые позволят вызывать делать что-либо при наведении на картинку, их я не привожу сдесь.

Проблема в том, что событие pointerover срабатывает уже когда курсор наводится на прозрачные пиксели в изображении банана, а нужно чтобы срабатывало точно при наведении на картинку банана.
Подскажите как это реализовать?
Ответить с цитированием
  #2 (permalink)  
Старый 12.03.2020, 13:23
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,728

Нет опыта с Pixi.js, но может быть можно:
- в обработчике события получить координаты события;
- получить информацию о пикселе, на котором произошло событие;
- проверить прозрачность этого пикселя.
Если прозрачность вас устраивает, обрабатывать событие, иначе игнорировать.
Ответить с цитированием
  #3 (permalink)  
Старый 12.03.2020, 16:09
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,662

Leha777, hitArea
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать обработку динамически созданной формы через ajax? Wimko AJAX и COMET 4 08.10.2019 16:37
Как избежать ошибки по ограничению открытых файлов? Tipylja Node.JS 3 17.08.2018 19:43
как сделать проверку на display: block; ufaclub jQuery 3 22.12.2013 19:21
Как сделать калькулятор и с чего начать? A.P. Yellowman Общие вопросы Javascript 3 15.11.2013 21:32
Как убрать hover? Либо как сделать стрелки статичными? krusty36 Элементы интерфейса 1 13.07.2011 09:20