In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

Richard's Dancing Cube

Get Adobe Flash player
by Reaction.Gears 29 Apr 2011
    Embed
/**
 * Copyright Reaction.Gears ( http://wonderfl.net/user/Reaction.Gears )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/9Oxe
 */

package {
    import flash.geom.Point;
    import flash.filters.BlurFilter;
    import flash.display.Bitmap;
    import flash.display.BitmapData;
    import flash.events.TimerEvent;
    import flash.utils.Timer;
    import flash.display.Shape;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        private var _shape:Shape;
        private var _timer:Timer;
        private var _bmd:BitmapData;
        private var _bf:BlurFilter;
        private var _pt:Point;
        private var _rad:int;
        public function FlashTest() {
            // write as3 code here..
            _pt = new Point();
            _bf = new BlurFilter(15,15);
            _bmd = new BitmapData(stage.stageWidth, stage.stageHeight, false, 0xffffff);
            addChild(new Bitmap(_bmd));
            _rad = 200;
            _shape = new Shape();
           draw();
            addChild(_shape);
            _timer = new Timer(23);
            _timer.addEventListener(TimerEvent.TIMER, loop);
            _timer.start();
            
        }
        private function draw():void{
             with(_shape.graphics){
                 clear();
                beginFill(0xfffffff*Math.random());
            
                drawRect(0,0,40,40);
            }
        }

        private function loop(e:TimerEvent):void{
            
            var _tc:int = _timer.currentCount;
            _shape.y = Math.sin(_tc /5)*100 +100;
            _shape.x = Math.tan(_tc/30)*50 + 150;
            _shape.rotation++;
            _bmd.draw(this);
            if(_tc % 50== 0){
                draw();
            }

            _bmd.applyFilter(_bmd, _bmd.rect, _pt, _bf);
            _bmd.scroll(-1,1);
            e.updateAfterEvent();
        }

    }
}