dissolver = 녹다,용해되다.
픽셀단위로 이미지위에 녹듯이 나타나는 듯하네요 ㅎ
좋아하는 여자 연예인 사진으로 간단한 갤러리 만들어봤습니다.
보시면 이미지가 픽셀단위로 이미지가 나타나는데로 살짝 어지럽네요 ;;
따로 버튼추가하셔서 이미지 골라볼수 있게 한번 만들어보세요~
package
{
import flash.events.Event;
import flash.display.MovieClip;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.geom.Point;
import flash.geom.Rectangle;
public class main extends MovieClip
{
private var imgNum:int;
private var oldImgNum:int;
private var totalImgNum:int=3;//총이미지 수
private var imageWidth:int;
private var imageHeight:int;
private var pixelCountNum:Number = 0;
private var pixelSpeed:Number = 0;
//
private var timer:Timer = new Timer(4000,1); //4초후 한번 실행
private var blankBitmapData:BitmapData;
private var loadBitmap:Bitmap;
private var imageArray:Array = new Array();
private var pixelNum:int = 3000;//3000픽셀씩 나타나게 되나봐요?
private var temp:BitmapData = new BitmapData(500, 350,true,0xffffff);
public function main()
{
//세장의 이미지입니다.
var image1:Bitmap = new Bitmap(new img1());
var image2:Bitmap = new Bitmap(new img2());
var image3:Bitmap = new Bitmap(new img3());
//imageArray에 넣는 과정이구요.
temp = image1.bitmapData;
imageArray.push(temp);
temp = image2.bitmapData;
imageArray.push(temp);
temp = image3.bitmapData;
imageArray.push(temp);
blankBitmapData = new BitmapData(500, 350,true,0xffffff);
loadBitmap = new Bitmap(blankBitmapData);
imageWidth = stage.stageWidth;
imageHeight = stage.stageHeight;
timer.addEventListener(TimerEvent.TIMER, timerHandler);
addChild(loadBitmap);
init();
}
private function init():void
{
stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
}
private function timerHandler(e:TimerEvent):void
{
pixelCountNum = 0;
pixelSpeed = 0;
//이미지가 완전히 나타났을때 다음이미지 순서로 변경
oldImgNum = imgNum;
if(imgNum<totalImgNum-1)
{
imgNum++;
}else
{
imgNum = 0;
}
stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
}
private function enterFrameHandler(e:Event):void
{
pixelCountNum += pixelNum;
//pixelNum 픽셀만큼 더해줘서 이미지가 다 나타났는지 체크
if (pixelCountNum>(imageWidth*imageHeight)+pixelNum)
{
stage.removeEventListener(Event.ENTER_FRAME,enterFrameHandler);
timer.start();
//이미지가 다 나타났으면 4초후 timer 이벤트 실행
}
pixelSpeed = blankBitmapData.pixelDissolve(imageArray[imgNum],new Rectangle(0,0,500,350),new Point(0,0),pixelSpeed,pixelNum,0xFFFFFFFF);
}
}
}
'배워보자!! > 플래시' 카테고리의 다른 글
[flash as3.0] 플래시 좌우롤링배너 만들기 type1 (0) | 2015.04.03 |
---|---|
[flash as3.0] 플래시로 구글광고 따라하기 ver2 (0) | 2015.04.02 |
[flash as3.0] 플래시로 구글광고 따라하기 ver1 (0) | 2015.04.01 |
[flash as3.0] 플래시 광고 만들기 ver1 (0) | 2015.03.28 |
[flash] 플래시 드래그 앤 드롭 기능 as3.0 (0) | 2015.03.25 |
댓글