forked from: Heart Math

by YoupSolo forked from Heart Math (diff: 49)
♥0 | Line 50 | Modified 2015-05-29 05:05:13 | MIT License
play

ActionScript3 source code

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

// forked from fila's Heart Math
package 
{
    import flash.events.Event;
    import flash.utils.Timer;
    import flash.display.Graphics;
    import flash.display.Sprite;
    public class FlashTest extends Sprite 
    {
        private var _g:Graphics;
        private var _precision:Number = .5;        
        public function FlashTest() 
        {
            stage.frameRate = 4;
            _g = this.graphics;
            this.addEventListener(Event.ENTER_FRAME, _oef );            
        }
        
        private function _oef(e:Event):void
        {
            draw();
        }
        
        private function draw():void
        {
            _g.clear();
            _g.lineStyle(2,0xCC0000);
            var sinT:Number;
            var cosT:Number;
            var x:Number;            
            var y:Number;
            for(var t:Number = 0; t < 7; t+= _precision) 
            {
                sinT = Math.sin(t); 
                cosT = Math.cos(t);
                x = 250 + 5*16*sinT*sinT*sinT;
                y = 250 - 5*(13*cosT-5*Math.cos(2*t)-2*Math.cos(3*t)-Math.cos(4*t));
                if(t > 0)
                {
                    _g.lineTo(x,y);
                }else{
                    _g.moveTo(x,y);
                }
            }
            
            if(_precision > .03)
            {
                _precision -= .01;                
            }else{
                this.removeEventListener(Event.ENTER_FRAME, _oef );  
            }            
        }
    }
}