利用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 壓縮檔給各位,提供有興趣的同學參考。
Whhat i do noot reealize is actually how you’re noo longer reaally
much more smartly-appreciated than you maay be riht
now. You’re so intelligent.Youu alfeady know therefore considesrably witth regardds to thks topic,
made me personally believe it frim a llot of varied angles.
Itss like meen aand women aree noot interested unless it’s onne thinng
to accomplieh wjth Womjan gaga! Your personal stuffs excellent.
At all tomes handle iit up!
hi!,I like yyour writing very a lot! percentage we
communicate more about your post oon AOL? I require a
specialist onn this arfea to unravesl my problem.
Maybe that’s you! Looking forward to seee you.
india pharmacy mail order: п»їlegitimate online pharmacies india – mail order pharmacy india
http://buydrugsonline.top/# order drugs online
indian pharmacy paypal india pharmacy indian pharmacies safe
canadian pharmacy ltd: canadian pharmacy 24h com safe – online pharmacy canada
thecanadianpharmacy: safe online pharmacies in canada – reputable canadian pharmacy
buy doxycycline 100mg tablets: Buy doxycycline hyclate – doxycycline australia cost
buy cipro online Buy ciprofloxacin 500 mg online ciprofloxacin 500mg buy online
https://lisinopril.auction/# lisinopril 20 mg canadian pharmacy
doxycycline over the counter australia: Buy doxycycline 100mg – doxycycline canada pharmacy
An oitstanding share! I have jusst forwadded tuis ojto a friennd
whoo had been dooing a lttle homework oon this.
Andd he actually ofdered mme dinner because I fojnd it for him…
lol. So let me reword this…. Thank YOU for the meal!! But yeah, thanx for spending tike tto discuss his issuje here oon yoyr
site.
amoxicillin pharmacy price buy amoxil amoxicillin without rx
https://lisinopril.auction/# lisinopril 10 mg price in india
ciprofloxacin 500mg buy online: ciprofloxacin without insurance – buy ciprofloxacin
doxycycline drug: Buy Doxycycline for acne – doxycycline 60 mg
zithromax 500 mg buy cheap generic zithromax where can you buy zithromax
http://lisinopril.auction/# 60 mg lisinopril
lisinopril pills 10 mg: buy lisinopril – lisinopril 2.5
buy ciprofloxacin tablets buy ciprofloxacin tablets ciprofloxacin over the counter
doxycycline pills cost: doxycycline buy – doxycycline 50 mg coupon
http://lisinopril.auction/# order lisinopril from mexico
amoxicillin canada price: buy amoxil – where can i get amoxicillin
doxycycline 10mg cost Buy doxycycline for chlamydia 40mg doxycycline prices
2 lisinopril: Buy Lisinopril 20 mg online – order lisinopril online united states
http://azithromycin.bar/# zithromax online pharmacy canada
ciprofloxacin mail online: ciprofloxacin without insurance – buy cipro cheap
zithromax 500 zithromax antibiotic generic zithromax 500mg india
zithromax online usa no prescription: zithromax antibiotic – generic zithromax 500mg
https://edpills.monster/# top ed drugs