flash on 2010-11-14

by aruerula
http://blog.cellfusion.jp/archives/633/
♥0 | Line 33 | Modified 2010-11-14 20:58:46 | MIT License
play

ActionScript3 source code

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

package  
{
    //http://blog.cellfusion.jp/archives/633/
    
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.geom.Matrix;    
    
    public class TransformEnterFrame extends Sprite 
    {
        private var _sp:Sprite;

        public function TransformEnterFrame()
        {
            _sp = new Sprite();
            _sp.x = 150;
            _sp.y = 150;
            
            // 四角形を作る
            _sp.graphics.beginFill(0x000000);
            _sp.graphics.drawRect(0, 0, 100, 100);
            _sp.graphics.endFill();
            
            // 基準点をわかりやすくするために左上に赤い矩形を作る
            _sp.graphics.beginFill(0xFF0000);
            _sp.graphics.drawRect(0, 0, 5, 5);
            _sp.graphics.endFill();
            
            addEventListener(Event.ENTER_FRAME,    enterframeHandler);
            
            addChild(_sp);
        }
        
        private function enterframeHandler(event:Event):void
        {
            var mat:Matrix = new Matrix();
            mat.translate(-50, -50);
            
            // 5°ずつ回転させる
            mat.rotate(5*Math.PI/180);
            
            mat.translate(50, 50);
            mat.concat(_sp.transform.matrix);
            _sp.transform.matrix = mat;
            
            // 座標がどうなっているのか trace
//            trace("x:"+_sp.x, "y:"+_sp.y);
        }
    }
}