利用Tweener製作動畫 – 其他參數
因為這陣子馬老師擔任了崇右數位媒體設計系的系主任後業務繁忙,好久沒在部落格上貼文章了,現在總算有些空檔可以繼續貼文,之前寫了有關利用Tweener製作動畫的文章,接著這篇文章來介紹在Tweener中其他可用的參數,請各位參考,不過詳細的部分還是可以參考官網的說明。
delay:可以設定在動畫完成後多久,再接續進行下一動畫(Tweener delay 範例)
import caurina.transitions.Tweener Tweener.addTween(ball, {x:150, time:1}); //用一秒鐘的時間移動ball元件至x為150的位置 Tweener.addTween(ball, {y:100, time:1, delay: 2}); //等待兩秒後用一秒鐘的時間移動ball元件至y為100的位置
getTweenCount:取得目前動畫的補間數量(Tweener getTweenCount 範例)
import caurina.transitions.Tweener Tweener.addTween(ball, {x:150, time:2}); Tweener.addTween(ball, {y:100, time:2,delay:2}); txt.text="元件Ball共有" + Tweener.getTweenCount(ball) + "段補間動畫"
getTweens:取得目前動畫所更改元件的屬性(Tweener getTweens 範例)
import caurina.transitions.Tweener Tweener.addTween(ball, {x:150, y:100, alpha:1, time:2}); txt.text="元件Ball共被製作了" + Tweener.getTweens(ball) + "的屬性變化" //輸出元件被補間的屬性
getVersion:取得目前使用Tweener的版本(Tweener getVersion 範例)
import caurina.transitions.Tweener Tweener.addTween(ball, {x:150, y:100, time:2}); txt.text="本動畫使用Tweener版本為:" +Tweener.getVersion() //輸出元件使用Tweener的版本
onStart、onUpdate、onComplete:分別在補間「開始」、「進行中」、「結束」呼叫不同的函數執行(Tweener complex 範例)
import caurina.transitions.Tweener import flash.events.MouseEvent; Tweener.addTween(ball, {x:150, y:100, time:3,onStart:startFn,onUpdate:updateFn,onComplete:completeFn}); /*用三秒鐘的時間移動ball元件至x為150和y為100的位置 開始時執行startFn函數 過程中執行updateFn函數 完成後執行completeFn函數 */ function startFn(){ ball.alpha=0.1 } function updateFn(){ ball.alpha+=0.02 txt.text="球體正在移動" } function completeFn(){ ball.alpha=1 txt.text="現在可以拖曳球體" ball.addEventListener(MouseEvent.MOUSE_DOWN,downFn) ball.addEventListener(MouseEvent.MOUSE_UP,upFn) function downFn(e:MouseEvent){ ball.startDrag() } function upFn(e:MouseEvent){ ball.stopDrag() } }
addCaller:在指定的時間內呼叫某函數N次(Tweener addCaller 範例)
import caurina.transitions.Tweener var i=0 no.text=i Tweener.addCaller(no, {onUpdate:go, time:10, count:10 , transition:"linear"}); //在10秒內針對no執行10次go函數 //Tweener.addCaller(no, {onUpdate:go, time:10, count:10 , transition:"easeinquad"}); //在10秒內針對no執行10次go函數且速度越來越慢 function go(){ i++ no.text=i }
controlTweens:控制由Tweener所產生的動畫(Tweener controlTweens 範例)
import caurina.transitions.Tweener Tweener.addTween(ball, {x:280, time:20,transition:"linear"}); pauseBtn.addEventListener(MouseEvent.CLICK,pauseFn) resumeBtn.addEventListener(MouseEvent.CLICK,resumeFn) function pauseFn(e:MouseEvent){ pauseBtn.visible=false resumeBtn.visible=true Tweener.pauseAllTweens(); } function resumeFn(e:MouseEvent){ pauseBtn.visible=true resumeBtn.visible=false Tweener.resumeAllTweens(); }
soundVolume:利用Tweener來控制音量(Tweener soundVolume 範例)
import caurina.transitions.Tweener; import caurina.transitions.properties.SoundShortcuts; SoundShortcuts.init(); var snd:Sound = new heavy ; var chn:SoundChannel = new SoundChannel ; chn = snd.play(0,1000); btn.addEventListener(MouseEvent.CLICK,clickFn) function clickFn(e:MouseEvent){ Tweener.addTween(chn, {_sound_volume:0, time:10}); } //點選按鈕後聲音會在十秒內逐漸歸零
FilterShortcut:Tweener也可以控制Flash中的各種濾鏡,利用濾鏡來製作動畫或互動(blurFilter 範例、dropShadowFilter 範例)
blurFilter –
import flash.filters.*; import caurina.transitions.properties.FilterShortcuts; import caurina.transitions.Tweener FilterShortcuts.init(); var blur:BlurFilter=new BlurFilter stage.addEventListener(MouseEvent.CLICK,clickFn) function clickFn(e:MouseEvent){ Tweener.addTween(ball, {time:0,_Blur_blurX:20,_Blur_blurY:20}); Tweener.addTween(ball, {x:mouseX, y:mouseY, time:2,_Blur_blurX:0,_Blur_blurY:0, transition:"easeOutQuart"}); }
dropShadowFilter –
import caurina.transitions.properties.FilterShortcuts; import caurina.transitions.Tweener import roMc FilterShortcuts.init(); stage.addEventListener(Event.ENTER_FRAME,shadowFn) function shadowFn(e:Event){ Tweener.addTween(ball, {time:0,_DropShadow_angle:roMc.ro(ball)+180,_DropShadow_distance:6}); }
以上是有關Tweener參數的一些範例,這邊也把Tweener Parameters 壓縮檔給各位,提供有興趣的同學參考。
http://zithromaxa.store/# order zithromax without prescription
prednisone 30: buy prednisone mexico – prednisone 1 mg daily
http://doxycyclinea.online/# buy generic doxycycline
price of doxycycline buy generic doxycycline buy doxycycline without prescription
zithromax cost: how to get zithromax online – generic zithromax 500mg india
neurontin pills for sale: gabapentin 600 mg – buy gabapentin
neurontin price india: neurontin cap 300mg price – neurontin 600
where to purchase doxycycline doxycycline 100mg price doxycycline 100mg tablets
https://gabapentinneurontin.pro/# neurontin 100 mg cost
https://amoxila.pro/# buy amoxicillin
can you buy prednisone in canada: prednisone buy cheap – order prednisone on line
prednisone where can i buy: buy prednisone 10mg online – order prednisone from canada
how to buy doxycycline online: doxycycline medication – doxycycline 50 mg
neurontin cost generic: neurontin cap 300mg – neurontin drug
neurontin 300 mg pill gabapentin order neurontin online
priligy mistress – cialis with dapoxetine crackle cialis with dapoxetine represent
https://amoxila.pro/# buy amoxicillin canada
http://amoxila.pro/# buy cheap amoxicillin online
order zithromax without prescription: zithromax tablets for sale – zithromax generic price
buy amoxicillin 250mg: amoxicillin no prescription – amoxicillin online no prescription
neurontin tablets uk can i buy neurontin over the counter gabapentin online
can you buy zithromax over the counter in australia: zithromax pill – buy zithromax online
canadian online pharmacy prednisone: how to buy prednisone online – prednisone 20mg prescription cost
http://doxycyclinea.online/# vibramycin 100 mg
http://zithromaxa.store/# generic zithromax online paypal
doxycycline 150 mg: doxycycline online – doxycycline hyc 100mg
neurontin 300mg: neurontin 300 mg price – neurontin tablets
neurontin 400 mg price neurontin 150mg neurontin cost in singapore
https://zithromaxa.store/# purchase zithromax z-pak
doxycycline hyc: doxycycline generic – buy doxycycline without prescription uk