In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

Recursive Circles

Get Adobe Flash player
by Maik.Foto1 11 Sep 2011
    Embed
/**
 * Copyright Maik.Foto1 ( http://wonderfl.net/user/Maik.Foto1 )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/j3OB
 */

package {
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.MouseEvent;
    import flash.events.EventDispatcher;
    import flash.display.MovieClip;
    import caurina.transitions.Tweener;
    
    public class RecursiveCircles extends Sprite {
        public function RecursiveCircles() {
            // write as3 code here..
            var sW:Number = stage.stageWidth;
            var sH:Number = stage.stageHeight;
            
            var main:MovieClip = new MovieClip();
                main.x = sW/2;
                main.y = sH/2;
                addChild(main);
            
            var centerX:Number = sW/2;
            var centerY:Number = sH/2;
            
            var seedColor:uint = 0xCCCCCC;
            var seed:Number = sW/2; 
            
            var incrementoTween:Number = 4;
                    
            var sphere:MovieClip = new MovieClip();
                sphere.graphics.beginFill(seedColor,1);
                sphere.graphics.drawCircle(0,0,seed);
                sphere.graphics.endFill();
                
                main.addChild(sphere);  
                
                inside(seed,0,0,seedColor);  
                
                addEventListener(MouseEvent.MOUSE_DOWN,movimiento);
                //addEventListener(MouseEvent.MOUSE_WHEEL,movimiento);
                
                
              
            function inside(seedW:Number,sX:Number,sY:Number,col:uint):void{
                var newSeed:Number = seedW/4;
                var colorInc:uint = 0x111100;
                
                var new_cx1:Number = sX-(newSeed*2);
                var new_cx2:Number = sX+(newSeed*2);
                var new_cy1:Number = sY-(newSeed*2);
                var new_cy2:Number = sY+(newSeed*2);
                
                var seedX:Number = 0;
                var seedY:Number = 0;
                
                var newColor:uint = seedColor-colorInc;
                 seedColor = newColor;
                var n_sphere1:MovieClip = new MovieClip();
                   n_sphere1.graphics.beginFill(newColor,1);
                   n_sphere1.graphics.drawCircle(new_cx1,sY,newSeed);
                   n_sphere1.graphics.endFill();
                  
                       main.addChild(n_sphere1); 
                
                var n_sphere2:MovieClip = new MovieClip();
                   n_sphere2.graphics.beginFill(newColor,1);
                   n_sphere2.graphics.drawCircle(new_cx2,sY,newSeed);
                   n_sphere2.graphics.endFill();
                   
                       main.addChild(n_sphere2); 
                   
                var n_sphere3:MovieClip = new MovieClip();
                   n_sphere3.graphics.beginFill(newColor,1);
                   n_sphere3.graphics.drawCircle(sX,sY,newSeed);
                   n_sphere3.graphics.endFill();
                   
                       main.addChild(n_sphere3); 
                   
                var n_sphere4:MovieClip = new MovieClip();
                   n_sphere4.graphics.beginFill(newColor,1);
                   n_sphere4.graphics.drawCircle(sX,new_cy1,newSeed);
                   n_sphere4.graphics.endFill();
                   
                       main.addChild(n_sphere4); 
                   
                var n_sphere5:MovieClip = new MovieClip();
                   n_sphere5.graphics.beginFill(newColor,1);
                   n_sphere5.graphics.drawCircle(sX,new_cy2,newSeed);
                   n_sphere5.graphics.endFill();
                   
                    main.addChild(n_sphere5); 
                    
                     var n_sphere6:MovieClip = new MovieClip();
                   n_sphere6.graphics.beginFill(newColor,1);
                   n_sphere6.graphics.drawCircle(new_cx2,new_cy2,newSeed);
                   n_sphere6.graphics.endFill();
                   
                    main.addChild(n_sphere6);
                    
                    var n_sphere7:MovieClip = new MovieClip();
                   n_sphere7.graphics.beginFill(newColor,1);
                   n_sphere7.graphics.drawCircle(new_cx1,new_cy1,newSeed);
                   n_sphere7.graphics.endFill();
                   
                    main.addChild(n_sphere7);  
                    
                    var n_sphere8:MovieClip = new MovieClip();
                   n_sphere8.graphics.beginFill(newColor,1);
                   n_sphere8.graphics.drawCircle(new_cx1,new_cy2,newSeed);
                   n_sphere8.graphics.endFill();
                   
                    main.addChild(n_sphere8); 
                    
                    var n_sphere9:MovieClip = new MovieClip();
                   n_sphere9.graphics.beginFill(newColor,1);
                   n_sphere9.graphics.drawCircle(new_cx2,new_cy1,newSeed);
                   n_sphere9.graphics.endFill();
                   
                    main.addChild(n_sphere9); 
                    
                    
                if(newSeed > 1){
                    inside(newSeed,new_cx1,sY,newColor); 
                    inside(newSeed,new_cx2,sY,newColor); 
                    inside(newSeed,sX,new_cy1,newColor); 
                    inside(newSeed,sX,new_cy2,newColor);
                    inside(newSeed,sX,sY,newColor);
                    inside(newSeed,new_cx1,new_cy1,newColor); 
                    inside(newSeed,new_cx2,new_cy1,newColor);
                    inside(newSeed,new_cx1,new_cy2,newColor); 
                    inside(newSeed,new_cx2,new_cy2,newColor);    
                }
                 
            }
            
            function movimiento(e:MouseEvent):void{
                //main.scaleX *= 1.618;
                //main.scaleY *= 1.618;
               // Tweener.addTween(main,{scaleX:main.scaleX*(e.delta/10), scaleY:main.scaleY*(e.delta/10), rotation:main.rotation+e.delta, time:1, transition:"esaOut"});
                
                for(var n:Number = 0; n < main.numChildren; n++){
                    var temp:MovieClip = main.getChildAt(n) as MovieClip;
                    var val:Number = temp.scaleY*4;
                        temp.scaleX *= 4;
                        temp.scaleY *= 4;
                       //Tweener.addTween(temp,{scaleX:val, scaleY:val, time:1, transition:"easeOut"}); 
                  
                  if(temp.scaleX > 4){
                      main.removeChild(temp);
                  }

                }
                
                var incColor:uint = (0x111100)*2;
                var nuColor:uint =  (0xCCCCCC)+incColor;
                
                inside(seed,0,0,nuColor);  
                
            }
;

                                          

            
             
        }
    }
}