利用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...

3,971 Responses

  1. Everything is very open with a very clear description of the challenges. It was truly informative. Your website is extremely helpful. Thank you for sharing.

  2. Vhtrhs表示:

    buy etodolac generic – buy pletal for sale buy pletal 100mg pills

  3. Lettie Wroten表示:

    I learned so much from this post. The ability to break down hard to understand ideas is something I really admire.

  4. Kathe Firman表示:

    A beacon of knowledge, or so I thought until I realized it’s just The shining confidence.

  5. Qiuiyu表示:

    vasotec online – doxazosin 2mg pills zovirax without prescription

  6. Xztyeq表示:

    dimenhydrinate 50mg cheap – buy cheap generic prasugrel actonel 35mg without prescription

  7. Vpcnpb表示:

    fulvicin sale – order generic gemfibrozil buy lopid 300 mg generic

  8. Pndeqz表示:

    buy dapagliflozin 10mg – buy forxiga 10 mg pills order acarbose 50mg online cheap

  9. Eloy表示:

    I’ll right away seize your rss as I can not to find your email subscription link or newsletter service. Do you have any? Kindly allow me understand in order that I may just subscribe. Thanks!

  10. Qjmipz表示:

    zovirax over the counter – buy zovirax generic order dydrogesterone 10 mg for sale

  11. Lvlacv表示:

    order cotrimoxazole 960mg sale – buy tobra 5mg generic tobra for sale

  12. Hey there! Do you know if they make any plugins to assist
    with Search Engine Optimization? I’m trying to get my website to rank for some
    targeted keywords but I’m not seeing very good success. If you know of any
    please share. Thank you! I saw similar article here:
    Escape rooms list

  13. Ocawvc表示:

    order dulcolax 5mg generic – oxybutynin 2.5mg oral order liv52 10mg generic

  14. Llhrhj表示:

    buy aciphex 10mg sale – generic aciphex 20mg order motilium generic

  15. IgnacioSlima表示:

    Viagra pas cher livraison rapide france: Viagra sans ordonnance 24h – Le gГ©nГ©rique de Viagra

  16. IgnacioSlima表示:

    acheter mГ©dicament en ligne sans ordonnance: cialis prix – pharmacie en ligne pas cher

  17. Robertdiz表示:

    pharmacie en ligne fiable: cialis generique – п»їpharmacie en ligne france

  18. Allenacurf表示:

    pharmacie en ligne pas cher: Levitra pharmacie en ligne – pharmacie en ligne france pas cher

  19. Allenacurf表示:

    pharmacie en ligne france fiable: cialis prix – pharmacie en ligne france fiable

  20. JuliusIntal表示:

    vente de mГ©dicament en ligne: pharmacie en ligne sans ordonnance – pharmacie en ligne livraison europe

  21. Robertdiz表示:

    pharmacie en ligne: kamagra livraison 24h – п»їpharmacie en ligne france

  22. Allenacurf表示:

    pharmacie en ligne france livraison belgique: Medicaments en ligne livres en 24h – pharmacie en ligne pas cher

  23. Allenacurf表示:

    Pharmacie sans ordonnance: Levitra pharmacie en ligne – pharmacie en ligne france fiable

  24. IgnacioSlima表示:

    Viagra gГ©nГ©rique sans ordonnance en pharmacie: Viagra generique en pharmacie – Viagra 100 mg sans ordonnance

  25. Allenacurf表示:

    trouver un mГ©dicament en pharmacie: Pharmacie Internationale en ligne – Pharmacie Internationale en ligne

  26. IgnacioSlima表示:

    pharmacie en ligne france pas cher: Levitra acheter – pharmacies en ligne certifiГ©es

  27. Allenacurf表示:

    Pharmacie Internationale en ligne: pharmacie en ligne pas cher – Pharmacie sans ordonnance

  28. Allenacurf表示:

    pharmacie en ligne fiable: pharmacie en ligne sans ordonnance – pharmacie en ligne pas cher

  29. GeorgeDaf表示:

    pharmacie en ligne france livraison internationale: pharmacie en ligne sans ordonnance – Pharmacie Internationale en ligne

  30. GeorgeDaf表示:

    Prix du Viagra en pharmacie en France: Viagra sans ordonnance 24h – Viagra homme sans prescription

發佈留言

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