利用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 壓縮檔給各位,提供有興趣的同學參考。

You may also like...

10,140 Responses

  1. WillianSeEmO表示:

    buy amoxicillin online uk buy amoxicillin 500mg uk amoxicillin 500mg prescription

  2. Stephenbum表示:

    http://clomid.site/# can i get generic clomid pill

  3. JasonWaync表示:

    cipro ciprofloxacin: п»їcipro generic – cipro ciprofloxacin

  4. sitemap表示:

    Hello there! This aarticle cold nnot be writte much better!

    Looking through thks article reminds mme of myy preious roommate!
    He continually keptt prreaching aabout this.

    I mos certainly wil forward this informattion to him.

    Fairly certakn he’ll have a reat read. I ppreciate you forr sharing!

  5. Hermanges表示:

    Paxlovid buy online paxlovid covid paxlovid buy

  6. Raymondsmero表示:

    http://paxlovid.win/# paxlovid covid

  7. Hermanges表示:

    compare prednisone prices prednisone 20 mg prednisone online india

  8. JasonWal表示:

    cipro for sale: ciprofloxacin – buy cipro online without prescription

  9. JasonWal表示:

    buy amoxicillin over the counter uk: amoxicillin 500mg price canada – amoxicillin capsules 250mg

  10. JasonWal表示:

    paxlovid buy: Paxlovid buy online – paxlovid cost without insurance

  11. Raymondsmero表示:

    http://amoxil.icu/# generic amoxicillin 500mg

  12. Hermanges表示:

    where can i buy cheap clomid where to get generic clomid without prescription where can i buy cheap clomid

  13. JasonWal表示:

    how to buy generic clomid no prescription: can you buy generic clomid for sale – how to buy clomid no prescription

  14. JasonWal表示:

    buy cipro cheap: cipro online no prescription in the usa – buy cipro online without prescription

  15. JasonWal表示:

    cheap prednisone online: prednisone cream – prednisone 20 mg

  16. BrianDutle表示:

    http://prednisone.bid/# online order prednisone 10mg

  17. JasonWal表示:

    cipro pharmacy: buy cipro online – ciprofloxacin

  18. JasonWal表示:

    where to get prednisone: prednisone 20 – buy prednisone without a prescription

  19. Hermanges表示:

    amoxicillin 800 mg price amoxicillin 500 mg online how much is amoxicillin prescription

  20. JasonWal表示:

    paxlovid pharmacy: paxlovid india – paxlovid generic

  21. sitemap表示:

    I’ve learfn a few good sttuff here. Certasinly value bookmarking foor revisiting.
    I wonder hoow a lott attyempt youu sset too ake anyy such magnificesnt inmformative site.

  22. Raymondsmero表示:

    https://paxlovid.win/# п»їpaxlovid

  23. JasonWal表示:

    amoxicillin generic: buying amoxicillin online – buying amoxicillin in mexico

  24. JasonWal表示:

    purchase amoxicillin 500 mg: amoxicillin over the counter in canada – amoxicillin order online

  25. sitemap表示:

    I do nott even know how I ended uup here, but I thought this post was
    great. I don’t kno wwho you arre buut certinly you’re goiong tto a famoous bblogger if yyou aren’t already 😉 Cheers!

  26. JasonWal表示:

    cipro ciprofloxacin: ciprofloxacin generic price – where can i buy cipro online

  27. JasonWal表示:

    prednisone 5 tablets: prednisone for sale – prednisone steroids

  28. Hermanges表示:

    prescription prednisone cost prednisone 300mg prednisone 5 mg

  29. JasonWal表示:

    buying cheap clomid online: can i purchase clomid tablets – how to get generic clomid no prescription

  30. JasonWal表示:

    over the counter prednisone cheap: average cost of prednisone 20 mg – prednisone 40 mg daily

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。