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

23,961 Responses

  1. DennishIp表示:

    buy rybelsus rybpharm: buy rybelsus online usa – buy rybelsus canada

  2. Uazrpiv表示:

    Полезная информация как купить диплом о высшем образовании без рисков

    shirt-hq.com/diplom-ngtu-kupit.html

  3. Uazruib表示:

    Реально ли приобрести диплом стоматолога? Основные этапы
    bradfrost.online/kupit-attestat-nedorogo-v-nikolaeve.html

  4. Тут можно преобрести купить оружейный сейф цена сейфы для оружия пистолетные

  5. Тут можно преобрести сейф огнестойкий купить сейф огнестойкий в москве

  6. LloydNoice表示:

    https://erepharm.com/# ed pills

  7. RobertHam表示:

    https://kampharm.shop/# kam pharm shop

  8. DennishIp表示:

    gabapentin: Buy gabapentin for humans – buy Gabapentin GabaPharm

  9. Тут можно преобрести сейф огнестойкий в москве огнестойкие сейфы купить

  10. Тут можно преобрести огнестойкий сейф купить огнестойкие сейфы купить

  11. Тут можно преобрести сейф для ружья купить купить сейф для пистолета

  12. LloydNoice表示:

    https://rybpharm.com/# rybpharm

  13. Тут можно преобрести сейф огнеупорный сейфы огнестойкие

  14. Uazrvpb表示:

    Как оказалось, купить диплом кандидата наук не так уж и сложно
    accostkpyo.online/diplom-devstvennika-kupit.html

  15. Тут можно преобрести магазин сейфы для оружия купить сейф для ружья москва

  16. Тут можно преобрести купить несгораемый сейф купить сейф противопожарный

  17. Тут можно преобрести сейф для сайги 12 сейф купить для ружья

  18. CurtisCem表示:

    buy kamagra oral jelly Kam Pharm kampharm shop cheapest Kamagra Kam Pharm

  19. Тут можно преобрести купить сейф для ружья в москве стоимость оружейного сейфа

發佈留言

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