forked from: flash on 2013-1-21

by yurij.shaulov forked from flash on 2013-1-21 (diff: 42)
♥0 | Line 51 | Modified 2013-01-21 15:28:01 | MIT License
play

ActionScript3 source code

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

// forked from yurij.shaulov's flash on 2013-1-21
package {
    import flash.events.MouseEvent;
    import flash.display.AVM1Movie;

    import flash.text.TextField;

    import flash.trace.Trace;



    import frocessing.display.F5MovieClip2D;



    public class FractalSample extends F5MovieClip2D



    {



            private var shape_size:Number;



            private var r1:Number;



            private var r2:Number;



            private var r3:Number;
            
            private var t:TextField = new TextField();
            private var pp:Number;

        public function FractalSample()

        {
            stage.addEventListener(MouseEvent.CLICK, dr);
        }
public function dr(e:MouseEvent):void{

            stroke(0, 0.5);
            colorMode(RGB, 30, 1, 1);
            beginFill(Math.random() * 0xFFFFFF);

            //noFill();

            translate(mouseX, mouseY);

            shape_size = Math.random()*100;
       r1 = shape_size;
            r2 = r1/2;

            r3 = r2*Math.sqrt(3);

            draw_shapes(6);

}



        private function draw_shapes(n:int):void{



                if(n-- <= 0) return;



                



                var rn:int = 3;



                scale(0.5);



                for (var i:int = 0; i < rn; i++){



                    pushMatrix();



                    translate(0,-shape_size);



                    triangle(0,-r1,r3,r2,-r3,r2);

                    

                    var pp:Number = (r1+r2+r3)/2;
                    trace(pp)

                

                  



                    draw_shapes(n);



                    popMatrix();



                    rotate(2*Math.PI/rn);



                }
                
                
                
                t.x=50;
                t.y=50;
                t.width=100;
                t.text=""+Math.sqrt(pp*(pp-r1)-(pp-r2)-(pp-3));
                addChild(t);



        }



   }



}