forked from: FractalSample

by ohisama forked from FractalSample (diff: 32)
see http://gihyo.jp/design/feature/01/frocessing/0002
♥0 | Line 38 | Modified 2013-03-04 08:44:57 | MIT License
play

ActionScript3 source code

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

// forked from nutsu's FractalSample
// see http://gihyo.jp/design/feature/01/frocessing/0002
package  
{
    import frocessing.display.F5MovieClip2D;    
    [SWF(width=465,height=465,backgroundColor=0xFFFFFF)]
    public class FractalSample extends F5MovieClip2D
    {
        private var siz : Number;
        private var r1 : Number;
        private var r2 : Number;
        private var r3 : Number;
        public function FractalSample() 
        {
            stroke(0, 0.5);
            noFill();
            translate(465 / 2, 465 / 2 + 30);
            siz = 220;
            r1 = siz;
            r2 = r1 / 2;
            r3 = r2 * Math.sqrt(3);
            tri(3);
        }
        private function tri(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, -siz);
                triangle(0, -r1, r3, r2, -r3, r2);
                tri(n);
                popMatrix();
                rotate(2 * Math.PI / rn);
            }
        }
    }
}