Re: [問題] 怎樣讓影格跑的比較慢?
※ 引述《submarine (submarine)》之銘言:
: 我想設計像是轉盤抽獎的東西,就是一個轉盤上有1~6
: 按下開始會 轉盤會開始轉,從快到最後停下來,指針指到轉盤上的的就是獎品
: 我現在想到的是用補間動畫再把轉盤變形轉角度。
: 但是問題來了,我要怎麼讓轉盤從快變到慢,最後停下來?
: 因為如果是用影格的話轉的速度就一樣了……
: 還是有辦法讓影格跑的比較慢??
: 各位大大請指教
我猜你要的應該不是讓「影格」跑慢,
而是要使轉盤的「轉速」隨時間的經過而逐漸下降吧…!?
我大概寫了一小段as,
你只要複製到主時間軸的第一影格中,
並新增一個實體名稱為「abc_mc」的影片片段,
拉到主時間軸上,就可以進行測試。
var x:Number = new Number();
var y:Number = new Number();
_root.onMouseDown = function() {
x = Math.PI/180*0;
_root.onEnterFrame=function(){
while (x<=(Math.PI/2) && x>=0) {
x = x+(Math.PI/180);
y = 5*Math.cos(x);
abc_mc._rotation += y;
trace(y);
break;
}
};
};
概念其實很簡單,
是利用cos函數在弧度(0~π/2)之間,
其函數值是由1緩降至0的原理,
只不過不夠逼真就是了。
若將其值對應到你要的MovieClip的旋轉角度上,
也就表示它會逐漸停止。
特別在於「y = 5*Math.cos(x);」一式中我將函數值放大了5倍,
目的僅在於讓該MovieClip轉過的角度大一點。
trace只是讓我自己知道它跑過的所有數值資料;
而把fps調得高一些,它轉得也會快些。
以上,
提供給你參考。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.216.24
※ 編輯: hanshiuan 來自: 140.115.216.24 (06/04 20:48)
※ 編輯: hanshiuan 來自: 140.115.216.24 (06/04 20:49)
推
06/07 22:19, , 1F
06/07 22:19, 1F
→
06/08 01:38, , 2F
06/08 01:38, 2F
討論串 (同標題文章)
Flash 近期熱門文章
PTT數位生活區 即時熱門文章