from_ greenass hansune
As 3.0
const IN:String = "in";
const OUT:String = "out";
function BlurInout(stg:DisplayObjectContainer,mc:DisplayObject, inout:String):void{
var displayObject:DisplayObject = mc;
displayObject.cacheAsBitmap = true;
var blurX:Number;
var blurY:Number;
var bluring:Number;
const quality:int = 3;
const step:int = 20;
if(inout == "in"){
displayObject.visible = true;
displayObject.alpha = 0;
blurX = step;
blurY = step;
bluring = -1.0;
stg.addChild(displayObject);
} else {
blurX = 0;
blurY = 0;
bluring = 1.0;
}
//var count:int = 0;
var blurFilter:BlurFilter;
var myFilters:Array;
var timer:Timer = new Timer(30,step*2);
timer.addEventListener(TimerEvent.TIMER, BlurProcess);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, BlurProcessOut);
timer.start();
function BlurProcess(e:TimerEvent):void{
blurFilter = new BlurFilter(blurX,blurY,quality);
myFilters = new Array();
myFilters.push(blurFilter);
displayObject.filters = myFilters;
blurX += bluring;
blurY = blurX;
//count ++;
//if(count > step){
displayObject.alpha -= (bluring / step*2);
//}
}
function BlurProcessOut(e:TimerEvent):void{
timer.stop();
timer = null;
if(inout != "in"){
stg.removeChild(displayObject);
}
}
}





