fc2ブログ

残像付き光

2007-11-30 | 20:32

マウスを残像付きの光が追いかけます。


package {
    import flash.display.*;
    import flash.events.*;
    import flash.filters.*;
    import flash.geom.*;
    import flash.utils.*;

    [SWF(width="400", height="400", framerate="1",backgroundColor="#0")]
        public class Blur extends Sprite
        {
            [Embed(source=" blur.png")]
                private var myImage:Class;

            private var bm:Bitmap;
            private var bitmaps:Array = [];
            private var traces:Array = [];
            private var SIZE:int=20;
            public function Blur()
            {
                for(var i:int = 0 ; i < SIZE ; i++){
                    var bm:Bitmap = new myImage();
                    bm.alpha= i*(1/SIZE);
                    bm.scaleX= i*(1/SIZE);
                    bm.scaleY= i*(1/SIZE);
                    bm.blendMode = BlendMode.LIGHTEN;
                    bm.filters = [new BlurFilter(15,15)];
                    addChild(bm);
                    bitmaps.push(bm);
                }
                addEventListener(Event.ENTER_FRAME, function(e:*):void{
                        trace(traces.length);
                        traces.push (new Point( stage.mouseX ,  stage.mouseY ));
                        if(traces.length > SIZE)
                        traces.splice(0,1);

                        if(traces.length > 0){
                        //traces.splice(0,1);
                        for(var i:int = 0 ; i < traces.length ; i++){
                        bitmaps[i].x = traces[i].x - bitmaps[i].width*bitmaps[i].scaleX/2;
                        bitmaps[i].y = traces[i].y - bitmaps[i].height*bitmaps[i].scaleY/2;
                        }
                        }
                        });
            }
        }

}
スポンサーサイト