forked from: forked from: forked from: forked from: AnimationSample

by dakkie
♥0 | Line 38 | Modified 2009-07-08 08:24:36 | MIT License
play

ActionScript3 source code

/**
 * Copyright dakkie ( http://wonderfl.net/user/dakkie )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/cofl
 */

// forked from dakkie's forked from: forked from: AnimationSample 
// forked from dakkie's forked from: AnimationSample 
// forked from nutsu's AnimationSample 
// forked from nutsu's TransformSample

package {
    import frocessing.display.F5MovieClip2D;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.MouseEvent;
    import flash.display.Stage;
    import flash.display.DisplayObject;
    
    [SWF(backgroundColor='0000000', frameRate='50')]
    
    public class AnimationSample extends F5MovieClip2D {
        private var n:int = 30;
        private var r:Number = 2 * Math.PI / n;
        private var a:int = 0;
        private var base:Sprite;
        
        //描画プログラムの初期化(ADDED_TO_STAGE)
        public function setup():void {
            colorMode(HSV, n, 1, 1);
            rectMode(CENTER);
            noStroke();
            visible = false;
            }
        
        //一定間隔で描画を実行する(ENTER_FRAME)
        public function draw():void {
            //キャンバスをステージの中心へ移動
            translate(stage.mouseX, stage.mouseY);
                       
            //キャンバスを角度a*r回転
            //rotate(r * a);
                     
            //描画
            for (var i:int = 0; i < n; i++) {
                rotate(r);
                fill(i, 1, 1);
                rect(a, a, 15, 15, 15, 15);
                rect(a * 2, a * 2, 15, 15, 15, 15);
                rect(a * 1.5, a * 1.5, 15, 15, 15, 15);
            }
            a++;     
            
            if(isMousePressed) 
                visible = true;
            if(a > 150)
                a = 0;
            if(a < 40)
                background(0);
         }            
    }
}