flash on 2014-11-11

by mutantleg
♥0 | Line 68 | Modified 2014-11-12 04:46:59 | MIT License
play

ActionScript3 source code

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

package {
    import flash.events.MouseEvent;
    import flash.text.TextField;
    import flash.events.Event;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            
           deb = new TextField();
           deb.mouseEnabled = false;
           deb.width = 320;
           deb.height = 240;
           addChild(deb);
         
           stage.addEventListener(MouseEvent.CLICK, onClick);   
           stage.addEventListener(Event.ENTER_FRAME, onEnter); 
        }//ctor
        
        public function onClick(e:MouseEvent):void
        {
            ang2 = Math.random()*6.28;
        }//onclick
        
        public var ang2:Number = 1.57;
        
        public var nx:Number = 0;
        public var ny:Number = 1;
        
        public var deb:TextField;
        
        
        
        public var vx:Number = 0;
        public var vy:Number = 0;
        
        
        public function onEnter(e:Event):void
        {
           deb.text ="";

           graphics.clear();
           graphics.lineStyle(2,0);
           
           var ang:Number;
           ang = -1.57;
           
           
           
           var wx:Number;           var wy:Number;
           wx = 230;           wy = 230;

           ang = Math.atan2(stage.mouseY-wy, stage.mouseX-wx);

           nx = Math.cos(ang);
           ny = Math.sin(ang);
           
           graphics.moveTo(wx,wy);
           graphics.lineTo(wx+ny*-256,wy+nx*256);
           graphics.moveTo(wx,wy);
           graphics.lineTo(wx+ny*256,wy+nx*-256);
           graphics.moveTo(wx,wy);
           graphics.lineTo(wx+nx*16,wy+ny*16);
           
           var ms:Number; ms = 10;
           var dot:Number;
           vx = 0;           vy = 8;
           
           vx = Math.cos(ang2)*8;
           vy = Math.sin(ang2)*8;
           
           
           graphics.drawCircle(300, 100, 8);
           graphics.moveTo(300, 100);
           graphics.lineTo(300+vx*ms,100+vy*ms);
           
           dot = nx*vx + ny *vy;
           
           
           var kx:Number;
           var ky:Number;
           
           kx = nx * dot;
           ky = ny * dot;
           
           deb.appendText("\n"+vx+"\n"+vy);
           deb.appendText("\n"+nx+"\n"+ny);
           deb.appendText("\n"+kx+"\n"+ky);
           
           
           vx -= kx;
           vy -= ky;
           deb.appendText("\n"+vx+"\n"+vy);
           
           graphics.lineStyle(2,0xFF0000);          
           graphics.moveTo(300, 100);
           graphics.lineTo(300+vx*ms,100+vy*ms);
           
            
        }//onenter
        
    }//classend
}