Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Проверка пересечения экранных объектов (http://www.flasher.ru/forum/showthread.php?t=204102)

art_maestro 19.10.2013 18:26

Проверка пересечения экранных объектов
 
Здравствуйте.

Подскажите как решить такую задачу. Есть два мувика мув1 и мув2. разного размера мув1>мув2.

Вопрос в следующем: передвигаем мув2 на мув1, как проверить, вошел ли мув2 в область мув1.

Я делал с координатами, но я думаю есть более простой способ, может какая-то функция, пожалуйста подскажите.

Спасибо.

Tails 19.10.2013 19:36

hitTestObject

KumoKairo 19.10.2013 19:58

На самом деле иногда и с координатами приходится делать, например если известно заранее, что мувики круглые. Тогда хит тест методы будут "промахиваться", поскольку они используют прямоугольные рамки объектов.
Есть еще pixel-perfect способ, когда проверяется столкновение непрозрачных пикселей объекта с :
1. Точкой.
2. Другим объектом с прозрачными пикселями.

Первый способ в AS3 можно реализовать с помощью hitTestPoint c выставленным флагом shapeFlag в true. Это относительно легковесный и нетребовательный к производительности метод.

Второй случай, когда требуется определить пересечение двух сложных объектов, нативно не реализован (насколько помню), но в инете полно библиотек для этого. (эта например)
Но за эту точность придется расплачиваться процессорным временем, поскольку это более трудоемкая задача.

Поэтому чаще всего разумнее использовать .hitTestObject или .hitTestPoint

Еще где-то были методы, проверяеющие столкновение объекта с любым другим объектом (мы не знаем заранее с каким столкнемся), но я настолько "отстал от жизни" что не помню, есть ли этот метод в нативном варианте или нет.

art_maestro 19.10.2013 21:38

Спасибо ребята! Буду пробовать.


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

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