project point to plane 2D

by mutantleg
♥0 | Line 45 | Modified 2013-11-08 20:21:42 | 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/pwFO
 */

package {
    import flash.events.Event;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
    
        public function FlashTest() {
        
            stage.addEventListener(Event.ENTER_FRAME, onEnter);
        }//ctor
        
        public function onEnter(e:Event):void
        {
        
            graphics.clear();
            graphics.lineStyle(2,0);
            var kx:Number;
            var ky:Number;
            kx = 120;
            ky = 90;
            graphics.drawCircle(kx,ky, 10);        
            
            var nx:Number;
            var ny:Number;
            var cx:Number;
            var cy:Number;
            var ang:Number;
            ang  = 0;
            ang = 1.57*0.5;
            
            
            cx = 200;
            cy = 200;
            
           ang = Math.atan2(stage.mouseY-cy,stage.mouseX-cx);

            nx = Math.cos(ang);
            ny = Math.sin(ang);
            
            graphics.moveTo(cx,cy);  graphics.lineTo(cx+nx*8,cy+ny*8);
            graphics.moveTo(cx+ny*-400,cy+nx*400);
            graphics.lineTo(cx+ny*400,cy+nx*-400);
            
            var d:Number;
            var dx:Number;
            var dy:Number;
            d = (kx-cx)*nx + (ky-cy)*ny;
            
            var px:Number;
            var py:Number;
            px = kx - (d*nx);
            py = ky - (d*ny);
            
            graphics.drawCircle(px,py,8);
            
            graphics.moveTo(kx,ky);
            graphics.lineTo(px,py);
                
        }//onenter
        
    }//classendz
}