Re: [問題] 物件依時間倒數 移動、旋轉
※ 引述《royhsu (SAW)》之銘言:
: 原始檔:http://www.mediafire.com/?jp8xwy6c3ov08xc
: 請問一下 如果想製作時間倒數 同時有個物件依時間進行移動
: 假設 要從A點 移動到 B點 ((這個距離時固定的))
: 但希望從A出發 到達B點的時候 剛好時間倒數完畢
: 也就是說 能用時間來控制它移動的量
: 在時間歸零歸零的同時 到達B點
: ---------------------------------
: 目前我只會做到"時間倒數",移動的問題就.......
: 請各位高手幫幫我,謝謝大家~
推文裡面的大大們都提到了
我跳出來答個詳解
你需要知道的是
1. A點
2. B點
3. 物件在A點的時間
4. 物件到達B點的時間
所以我們宣告四個變數
var 時間A : int = new Date(2011,9,25).valueOf();
var 座標A : Point = new Point(100,100);
var 時間B : int = new Date(2011,10,25).valueOf();
var 座標B : Point = new Point(500,200);
假如想要指定到時、分、秒也可以
我們可以透過線性內插的方式取得物件應該落在哪裡
作一個函數好了
funtion getNowPoint():Point {
var 現在時間 : int = new Date().valueOf();
var t : Number = (現在時間 - 時間A) / (時間B - 時間A);
if( t > 1 ) t = 1;
var 現在座標 : Point = Point.interpolate(座標B, 座標A, t);
return 現在座標;
}
所以可以寫一個時間軸迴圈 去更新物件的座標
addEventListener(Event.ENTER_FRAME, function(){
var p:Point = getNowPoint();
物件.x = p.x;
物件.y = p.y;
});
做完之後
會發現物件只能走直線 超蠢
如果想走導引線的話
建議是把影格畫好
然後用同樣方法去算出現在應該跳到哪一個影格
直接這樣寫就行了吧
物件.gotoAndStop( Math.floor(t * 總影格數) +1);
--
blog:http://etrex.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.137.198.18
※ 編輯: etrexetrex 來自: 140.137.198.18 (10/25 19:40)
推
10/25 22:37, , 1F
10/25 22:37, 1F
推
10/26 02:09, , 2F
10/26 02:09, 2F
討論串 (同標題文章)