Предотвращение наложения изображений DragDrop в Flex - PullRequest
1 голос
/ 16 апреля 2010

Я пытаюсь создать в основном головоломку в Flex Builder 3. Я отображаю изображения из массива на холсте, которые можно перетаскивать по холсту. Моя проблема в том, что я не хочу, чтобы изображения могли перекрывать друг друга. Любые идеи о том, как предотвратить это?

Они могут перекрываться при перетаскивании, но не при падении, им нужно «привязаться» к ближайшей точке, которая еще не занята другим изображением.

1 Ответ

0 голосов
/ 01 марта 2011

Я сделал что-то похожее на это. Что вы делаете, это onDrop добавляете цели (x,x + object.width) и (y,y + object.height) в массив. До этого, если массив не является нулевым, проверьте, находится ли значение вашего нового объекта x или y в пределах существующего диапазона в массиве. Если это так, не разрешайте сброс, иначе разрешите сброс. Все изображения, независимо от «изображения», представляют собой квадраты / прямоугольники, поэтому это предотвратит наложение. Однако, если у вас есть сложные картинки (то есть круги / шестиугольники) и вы пытаетесь соединить края вместе, этот метод не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...