2013-03-01 29 views
-1

我希望有一個影片剪輯移動到從彈弧電流位置點擊鼠標目的地X &年。我想這樣做在8個方向以及....請幫助...移動一個影片剪輯到指定目的地X&Y protectile電弧

+0

畫一個簡單的拋物線作爲運動功能的吐溫,應該做的。 – Vesper 2013-03-01 06:53:41

+0

感謝名單晚禱......但是當我這樣做,y位置需要自行按拋物線函數,不一樣的我的目的地X .. – Maddy 2013-03-01 07:04:24

+0

好吧,你想從(X1,Y1)將您的MC來( X2,Y2)。您可以通過X移動通常情況下,逐步,線性,並用Y需要2個組件,一個是線性的,另一種是拋物線,開始和拋物線爲0的結束,中間是-H。我無法使用補間編碼,所以我只能給出如何構建補間的算法。 – Vesper 2013-03-01 07:17:02

回答

0

它看起來像你需要兩個補間,一個X和一個Y.說,你已經鎖定「destX」和「destY 「,還有」sourceX「和」sourceY「。你希望Y的函數總是將自己對齊一個特定的值,也就是高程。做一個功能漸變ŸILKE這樣的:

function yParabola(t:Number,b:Number,c:Number,d:Number,p:Number=-30):Number { 
    return b+c*t/d+4.0*(t/d*(1.0-t/d)*p); 
} 

它送入你的吐溫爲Y.的主要問題是,fl.transitions.Tween引擎無法使其充斥通過第五或第六參數在他們的緩和作用,所以你可能需要使用一組不同的拋物線函數是這樣的:

function bigParabola(t:Number,b:Number,c:Number,d:Number):Number { 
    return yParabola(t,b,c,d,-100); 
} 

,並將它們送入您可能需要不同的補間。

+0

對不起,對於遲到的答覆....感謝vesper ...將調查並更新評論... – Maddy 2013-03-04 04:03:00

+0

嘿Vesper,你能告訴我這些t,b,c和d字段代表什麼... – Maddy 2013-03-04 04:32:30

+0

[The手冊](http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fl/transitions/easing/Strong.html)表示,第一個參數't'是當前時間偏移,'B'開始值,'c'是總價值變化,'d'是總持續時間。函數結果直接應用於屬性。 – Vesper 2013-03-04 05:20:27

相關問題