Помощь · Поиск · Пользователи · Календарь
Полная версия этой страницы: Столкновение объектов неправильной формы
Flash Zone Forum > Macromedia Flash > ActionScript
addertu
Здравствуйте. Есть два объекта неправильной формы. Если я использую код: onClipEvent(enterFrame) { if ( _root.obj1.hitTest ( _root.obj2 ) ) { trace(1) ; } } то trace(1) сработает только тогда когда какойто невидимый прямоугольник объекта _root.obj2 столкнется с объектом _root.obj1. Как сделать так чтоб trace(1) сработала не тогда когда столкнется этот невидимый прямоугольник а когда именно кончик то есть граница объекта _root.obj2 коснется границы объекта _root.obj1? Надеюсь я понятно объяснил.
chingachgoog
Ну во-первых хиттест имеет 3 реализации. Есть реализация когда ловиться пересечение именно видимой части, но с ТОЧКОЙ (а не с видимой частбю другого объекта).
Так что тут надо думать. Просто не выйдет.
addertu
Цитата(chingachgoog @ 30.06.2011 - 14:27) *
Ну во-первых хиттест имеет 3 реализации. Есть реализация когда ловиться пересечение именно видимой части, но с ТОЧКОЙ (а не с видимой частбю другого объекта).
Так что тут надо думать. Просто не выйдет.


Чегоже они не продумали о такой функции? по моему она сверх актуальна в этой программе так как она графическая. Я смотрю во многих языках нет именно этой функцыи. может ее очень трудно создать?
chingachgoog
Цитата(addertu @ 30.06.2011 - 15:15) *
может ее очень трудно создать?


Видимо крайне ресурсоемко.
Но как бы то ни было, факт в том, что писать эту фичу приходится самому разработчику.
MustLive
addertu

В случае столкновения объектов неправильной формы просто так корректно проверить столкновение (через hitTest) не получится. И нужно вручную писать код (в самом AS нет такой возможности), о чём уже сказал chingachgoog. Ранее мы уже на форуме обсуждали данную ситуацию.

Так что или напиши собственный алгоритм для этой задачи или используй hitTest и объекты правильной формы smile.gif.
Русская версия IP.Board © 2001-2013 IPS, Inc.