flash on 2015-9-27

by mutantleg
♥0 | Line 86 | Modified 2015-09-27 03:50:54 | 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/WaVG
 */

package {
    import flash.text.TextField;
    import flash.events.Event;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            
            deb = new TextField();
             deb.width=320; deb.height=240;
             deb.mouseEnabled=false;
            addChild(deb);
            
            stage.addEventListener(Event.ENTER_FRAME, onEnter);
        }//ctor


        public var deb:TextField;        
        
        public var cx:Number = 230;
        public var cy:Number = 230;
        public var xrad:Number = 64;
        public var yrad:Number = 32;
        public var ang:Number = 0;
       
       public function onEnter(e:Event):void
       {
           graphics.clear();
           graphics.lineStyle(2, 0);
           
           
           ang += 0.01;
           
           var nx:Number;
           var ny:Number;
           
           
           nx = Math.cos(ang);
           ny = Math.sin(ang);
           
           graphics.drawCircle(cx, cy, 8);
           graphics.moveTo(cx,cy);
           graphics.lineTo(cx+nx*16,cy+ny*16);
           
           var x0:Number; var y0:Number;
           var x1:Number; var y1:Number;
           var x2:Number; var y2:Number;
           var x3:Number; var y3:Number;
           
           x0 = cx + nx * xrad - ny * yrad;
           y0 = cy + ny * xrad + nx * yrad;
           x1 = cx + nx * -xrad - ny * yrad;
           y1 = cy + ny * -xrad + nx * yrad;
           x2 = cx + nx * xrad - ny * -yrad;
           y2 = cy + ny * xrad + nx * -yrad;
           x3 = cx + nx * -xrad - ny * -yrad;
           y3 = cy + ny * -xrad + nx * -yrad;

           graphics.drawCircle(x0,y0, 5);
           graphics.drawCircle(x1,y1, 5);
           graphics.drawCircle(x2,y2, 5);
           graphics.drawCircle(x3,y3, 5);
           
           graphics.moveTo(x0,y0);
           graphics.lineTo(x1,y1);
           graphics.lineTo(x3,y3);
           graphics.lineTo(x2,y2);
           graphics.lineTo(x0,y0);
           
           
           var t0:Number;
           var t1:Number;
           var t2:Number;
           var t3:Number;
           
            nx = 1; ny = 0;               
           
           t0 = x0*nx + y0*ny; 
           t1 = x1*nx + y1*ny; 
           t2 = x2*nx + y2*ny; 
           t3 = x3*nx + y3*ny; 

/*           
           t0 += 350; t0/=3;
           t1 += 350; t1/=3;
           t2 += 350; t2/=3;
           t3 += 350; t3/=3;
 */
           
           graphics.drawCircle(t0, 16, 4);
           graphics.drawCircle(t1, 16, 4);
           graphics.drawCircle(t2, 16, 4);
           graphics.drawCircle(t3, 16, 4);
 
           graphics.moveTo(x0, y0);
           graphics.lineTo(t0, 16);
           graphics.moveTo(x1, y1);
           graphics.lineTo(t1, 16);
           graphics.moveTo(x2, y2);
           graphics.lineTo(t2, 16);
           graphics.moveTo(x3, y3);
           graphics.lineTo(t3, 16);
 
 
           deb.text = "t0 "+t0 +"\nt1 "+t1+"\nt2 " + t2 + "\nt3 " + t3;
  
           var m0:Number; var m1:Number;
            m0 = t0 < t1 ? t0: t1;
            m0 = m0 < t2 ? m0 : t2;
            m0 = m0 < t3 ? m0 : t3;
                     
            m1 = t0 > t1 ? t0: t1;
            m1 = m1 > t2 ? m1 : t2;
            m1 = m1 > t3 ? m1 : t3;
           
           graphics.drawCircle(m0, 32, 4);
           graphics.drawCircle(m1, 32, 4);
           
           graphics.moveTo(m0, 32); graphics.lineTo(m1, 32);
           
           
       }//onenter
       
        
    }//classend
}