2010-03-23 68 views
0

我需要實現拖放功能,我可以在其中定義和約束可拖動對象的路徑。 像在http://www.kirupa.com/forum/showthread.php?t=330302,只有我有路徑設計,並沒有通過數學函數計算。所以,事實上,隨着鼠標移動,我需要告訴對象遵循自定義路徑/動畫片段。在特定路徑(ex bezier曲線)上拖放as3

+0

好吧!涼!繼續! – raj 2010-03-23 07:54:48

+1

您的路徑如何表示?它只是一個位圖,還是一個手繪(即bezier)曲線? – 2010-03-23 07:58:30

+0

你可能想「問一個問題」...檢查橙色標籤,它說問題! – 2010-03-23 12:29:03

回答

1

就像你在Kirupa的例子中一樣,在MouseMove處理程序中,你將立即採用被拖動項目的x和y值並重新計算它們。例如,要將項目限制在一條垂直線上,可以將x設回到開始的項目x,同時釋放y以跟隨鼠標。

在你的情況,你需要一個x和y重新計算,它可以1)確定移動是否在你的路徑上,2)如果沒有,將它移動到該路徑上的最近點「最近」意味着你)。

也許碰撞檢測?如果沒有碰撞(物品離開路徑),然後沿某個方向(沿着水平方向或垂直方向)移動物品,直到遇到碰撞。

好嗎?

如果StackOverflow沒有問題,也許你可以報告回來,當你有這個解決?

約翰希克斯