利用Tweener製作動畫 – 數大便是美

套用徐志摩的名言:「數大」便是美,意思是說數量多就是美,不過雖然數大便是美,但如果要針對多個元件製作動畫,那利用程式一定會比手工來的輕鬆,甚至可以更漂亮和壯觀,以下的範例就是利用Tweener針對較多的元件來製作動畫的結果,分享給大家參考!希望各位未來不會「數大」便是累。

Tweener 滿天星斗:利用Tweener針對星形製作Alpha動畫,是一個很簡單的範例。

import caurina.transitions.Tweener
import flash.display.MovieClip;

setInterval(starFn,50)
function starFn(){
	var scale:Number=Math.random()
	var mc:MovieClip=new star
	mc.x=Math.random()*500
	mc.y=Math.random()*500
	mc.scaleX=scale
	mc.scaleY=scale
	mc.alpha=0
	addChild(mc)
	Tweener.addTween(mc, {alpha:1, time:7, transition:"linear"});
	Tweener.addTween(mc, {alpha:0, time:3,delay:8, transition:"linear"});
}

滿天星斗 原始檔 下載


Tweener 擴散效果:利用Tweener針對球體來製作動畫,其中還應用到距離計算的Class,可以試著調整參數(彈出距離變數、彈出數量…等)來觀察改變的情況。

import flash.display.Sprite;
import roMc;
import flash.geom.Point;
import caurina.transitions.Tweener;

//變數定義區塊
var centerPoint:Point = new Point  ;//圓形中心點
var i:int = 1;//迴圈變數
var radius:int = 50;//彈出距離變數
var no:int = 20;//彈出數量
var circleArray:Array=new Array//球體陣列(針對移除使用)
var sec:int=1//動畫秒數
var hold:Number=0.1//延遲秒數

centerPoint.x = stage.stageWidth / 2;
centerPoint.y = stage.stageHeight / 2;

stage.addEventListener(MouseEvent.CLICK,clickFn);

function clickFn(e:MouseEvent)
{
	while (circleArray.length > 0) {
			removeChild(circleArray.pop());
	}
	Tweener.removeAllTweens();
	showFn();
}

function showFn()
{
	for (i=1; i<=no; i++)
	{
		var mc:Sprite = new ball  ;
		circleArray.push(mc)
		var angle:Number = 2 * Math.PI / no * i;
		var targetPoint:Point = new Point();
		targetPoint.x = radius * Math.cos(angle) + centerPoint.x;
		targetPoint.y = radius * Math.sin(angle) + centerPoint.y;
		addChild(mc);
		mc.x = centerPoint.x;
		mc.y = centerPoint.y;
		mc.alpha = 0;
		Tweener.addTween(mc, {alpha:1,x:targetPoint.x,y:targetPoint.y, time:sec, transition:"linear",delay:i*hold});
		Tweener.addTween(mc, {alpha:0,x:centerPoint.x,y:centerPoint.y, time:sec, transition:"linear",delay:i*hold+(no*hold+1)});
	}
}

擴散效果 原始檔 下載

You may also like...

28,885 Responses

  1. kypit 1s_xfEa表示:

    1с предприятие купить программу 1с предприятие купить программу .

  2. вывод из запоя в ростове-на-дону вывод из запоя в ростове-на-дону .

  3. kypit 1s_qdEa表示:

    1с предприятие купить программу 1с предприятие купить программу .

  4. AlbertNer表示:

    https://kamapharm.com/# Kama Pharm
    purchase prednisone no prescription

  5. Brianlit表示:

    buy cytotec online Cyt Pharm buy cytotec online

  6. AlbertNer表示:

    http://cytpharm.com/# buy cytotec online
    where to buy prednisone in australia

  7. LarryLog表示:

    DapPharm: dap pharm – buy priligy

  8. kypit 1s_xwEa表示:

    программа 1с стоимость программа 1с стоимость .

  9. DanielZek表示:

    https://predpharm.shop/# PredPharm
    super kamagra

  10. snaptikx表示:

    Greetings! Very helpful advice within this post! It is the little changes that will make the biggest changes. Thanks a lot for sharing!

  11. kypit 1s_tbEa表示:

    программа 1с купить с установкой программа 1с купить с установкой .

  12. Waltererync表示:

    prednisone 20mg prices: Pred Pharm – prednisone 40 mg daily

  13. kypit 1s_xfEa表示:

    купить программу 1с бухгалтерия купить программу 1с бухгалтерия .

  14. вывод из запоя на дому ростов на дону вывод из запоя на дому ростов на дону .

  15. kypit 1s_tmEa表示:

    программа 1с купить https://kupit-1s15.ru/ .

  16. вывод из запоя на дому в ростове на дону вывод из запоя на дому в ростове на дону .

  17. kypit 1s_ktEa表示:

    купить 1с онлайн https://kupit-1s15.ru/ .

  18. поставить капельницу от запоя на дому цена поставить капельницу от запоя на дому цена .

  19. Nasosy_fdPl表示:

    насос для матраса насос для матраса .

  20. LarryLog表示:

    Pred Pharm: PredPharm – Pred Pharm

  21. DanielZek表示:

    https://dappharm.shop/# dapoxetine price
    Kamagra 100mg price

  22. Waltererync表示:

    Cyt Pharm: Cyt Pharm – cytotec buy online usa

  23. Brianlit表示:

    Pred Pharm prednisone tablet 100 mg order prednisone

發佈留言

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