Перетаскивание объекта по нарисованному пути - PullRequest
0 голосов
/ 16 сентября 2010

То же, что и вопрос: Мне нужно перетащить компонент по программно нарисованному пути, составленному из различных видов графики, таких как линии, кривые и т. Д.

Я уже гуглил, но безуспешно. Есть идеи? спасибо!

Ответы [ 3 ]

2 голосов
/ 16 сентября 2010

Следующее сказано для линейно изогнутого пути, нарисованного вами. Вы можете использовать аналогичный метод для любого направления.

  • Добавить прослушиватель событий для клика. (Начинается перетаскивание)

  • Отслеживание мыши пользователя вдоль х Например, направление.

  • Продолжайте отображать x & y компонента как Мышь х меняется по отношению к нарисованная траектория х.

  • Прекратить перемещение, когда пользователь покидает мышь

Начните с этого, если возможно, и вернитесь с кодом, если у вас возникнут сомнения.

1 голос
/ 18 сентября 2010

Если ваша чертежная часть завершена, вы можете использовать двухмерный массив ByteArray.Размер ByteArray будет равен размеру вашей сцены, этот двумерный массив будет установлен на ноль, значит, все ваши места на сцене будут установлены на ноль.Когда нарисована какая-либо кривая или линия, установите эти местоположения на единицу.Теперь вы знаете, по крайней мере, куда может перемещаться ваш объект, допустимые местоположения - это те, которые установлены в единицу.Теперь вторая часть - как переместить объект по правильному пути или местоположению с помощью мыши или клавиатуры.

Вы будете использовать Event.EnterFrame для плавного и быстрого перемещения объекта,

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

2 - с помощью события перемещения мыши определите положение MouseY для перемещения вверхили ВНИЗ относительно текущей позиции MouseY и переместите ее соответственно, если местоположение установлено в единицу.

Надеюсь, это поможет вам в правильном направлении ...

0 голосов
/ 16 сентября 2010

Будет ли это работать?http://www.pixeldigest.com/followthepath.html

...