![]() |
курсор над объектом MovieClip
Доброе время суток. в целом задача следующая: есть MovieClip, который может быть как растровым так и векторным. и необходимо узнать находится ли курсор на объекте. т.е. если это картинка, то необходимо выдавать true (что означает что курсор над объектом) тогда когда курсор действительно попал на объект, а не на пустую область в прямоугольнике. Что можете посоветовать?
|
вы имеете ввиду что картинка с прозрачностью? тогда проверяйте на пиксель с альфой 0
|
Если это растр, то он всегда прямоугольник и курсор действительно всегда попадает на объект. Пустая область - это пиксели растра с альфа=0. Анализируйте прозрачность пикселя под курсором.
Добавлено через 32 секунды Аха, опередили =) |
дело в том что я не знаю картинка это или мувик. И то что там лежит может сменится в любой момент.
|
>>не знаю картинка это или мувик
остается срисовывать содержимое в битмап (BitmapData#draw) и опять же смотреть прозрачность пикселя под курсором |
ну так устанавливайте для мувика какой-нибудь флаг, чтобы знать мувик там или битмапа. Или используйте проверку типа if (mc is MovieClip) ... .
|
Цитата:
|
Цитата:
|
Вложений: 1
Ситуация сложнее. Если внутри мувиклипа лежит безымянная картинка, то flash IDE из нее делает Shape, а не Bitmap!
И при проверке пересекающихся мувиклипов надо еще определять, кто выше находится. Столкнувшись с аналогичной ситуацией я написал такой класс, может и вас пригодится: Код AS3:
Код AS3:
|
Спасибаа!! Это все здорово работает. Только вот проблема. У меня мувик расположен не полностью на своём stage, а выше его (это необходимо для последующей привязки) и та часть которая на stage выделяется отлично, а та что выше не реагирует. Что можете посоветовать???
Добавлено через 69 часов 8 минут Все, всем спасибо!! Все заработало. Убрал сторки, где меняется размер изображения |
| Часовой пояс GMT +4, время: 23:55. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.