利用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://cheapestmexico.com/# mexican border pharmacies shipping to usa
canadian family pharmacy cheapestcanada.com canadian family pharmacy
http://cheapestindia.com/# mail order pharmacy india
http://cheapestindia.com/# indian pharmacy online
http://36and6health.com/# rx pharmacy no prescription
mail order pharmacy india indian pharmacies safe online shopping pharmacy india
https://36and6health.shop/# canadian pharmacy coupon code
https://cheapestindia.com/# cheapest online pharmacy india
https://cheapestmexico.com/# mexican online pharmacies prescription drugs
prescription from canada: cheapest and fast – meds no prescription
canadian pharmacy antibiotics: canada drugs – canadian pharmacy 1 internet online drugstore
medicine in mexico pharmacies mexico drug stores pharmacies buying prescription drugs in mexico
https://cheapestandfast.shop/# legitimate online pharmacy no prescription
lisinopril 20g online pharmacy lisinopril 10 mg lisinopril cost
cytotec abortion pill: buy cytotec online fast delivery – buy cytotec pills online cheap
where can i buy cheap clomid without insurance: where to get clomid pills – generic clomid without insurance
http://clomiphene.shop/# buy clomid tablets
how to buy cheap clomid price can i order cheap clomid without a prescription can i purchase cheap clomid without rx
neurontin 100 mg tablets: cost of neurontin – neurontin 300
canada neurontin 100mg lowest price: neurontin 100 mg capsule – neurontin capsules 100mg
neurontin generic brand: neurontin 800 mg price – neurontin online
neurontin discount: neurontin 300 mg cost – neurontin price in india
lisinopril 80 mg lisinopril 30 mg tablet lisinopril 20 mg india
http://gabapentin.club/# buy neurontin canada
lisinopril 40: lisinopril buy without prescription – buy lisinopril without prescription
neurontin brand name in india: neurontin capsule 600mg – brand neurontin 100 mg canada
neurontin brand name cost of brand name neurontin buy neurontin 100 mg canada
over the counter lisinopril best lisinopril brand cost of lisinopril 10 mg
http://gabapentin.club/# neurontin 100mg discount
https://lisinopril.club/# lisinopril pill