Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 09.04.2009, 16:55
IDimitry вне форума Посмотреть профиль Найти все сообщения от IDimitry
  № 1  
Ответить с цитированием
IDimitry
Banned

Регистрация: Mar 2009
Сообщений: 93
По умолчанию Вопросы по перетаскивание сложного мувика

Давно столкнулся с этим вопросом, но отставил "на потом" мелкие вопросы наподобие этого. Вот, пришло время и до них ...

1. В библиотеке находятся мувики, преобразованные из битмепа круглой (овальной) формы. Они программно добавляются на сцену и их можно перетаскивать. Само собой, раз мувик построен на битмепе, то его можно "брать" как за видимые части (круг, овал), так и за углы, что, собственно, нелогично и не очень удобно.
Для себя я вижу несколько направлений реализации механизма отлова нажатия мыши на видимой части:
- проверка на прозрачность пиксела мувика, на котором сделан клик;
- задать для мувика свойство hitArea, которое будет указывать на скрытый спрайт с векторным шаблоном, повторяющим форму видимой части перетаскиваемого мувика;
- задать свойство mask для мувика и обрабатывать его события (эта идея самая сырая и схожа с предыдущей, так как также надо рисовать векторный шаблон-маску, только инвертированную - на невидимые части).

Наверняка кто-то сталкивался с подобной реализацией. По какому пути лучше пойти? - Особенно в плане быстроты анализа клика. А также, возможно, есть другой (другие) способы "борьбы" с этой проблемой.

2. При перетаскивании мувика он двигается рывками, как бы постоянно доганяя курсор мыши. С одной стороны, перетаскиваемые мувики очень малы - почему бы им не перерисовываться быстрее, да и комп, где тестируется, достаточно мощный, а с другой стороны - бекграунд флешки - это сплошной битмеп, с чем, возможно, можно связать неплавность движения мувика.

Можно ли побороть это рывчатое движение? - Возможно, надо просто делать мои мувики на время перетаскивания курсорами мыши?

3. Следствие первых двух, а также мой недавний переход на AS3 с его "слегка измененной" событийной моделью.
Пример: мувики находятся друг над другом так, что невидимый уголок верхнего находится над нижним. При нажатии на уголок верхнего событие все равно должен получить нижний мувиклип. Я так понимаю, что при задании hitArea все и так заработает (событие фактически получает шаблон, а на нем клика не было), а вот если через анализ прозрачности, то надо "передать клик" нижнему мувику - так сказать, выполнить диспетчеризацию события (?). Как на практике это делается?

Спасибо за советы.

Создать новую тему   Часовой пояс GMT +4, время: 18:42.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 18:42.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.