Mega Code Archive

 
Categories / Flash ActionScript / Graphics
 

RotateChildren( ), applies the generalized code from Example 20-4 It randomly rotates all the descendants of a specified containe

package {   import flash.display.*;   import flash.events.*;   public class RotatingRectangles extends Sprite {     public function RotatingRectangles (  ) {       var rects:Array = new Array(  );       for (var i:int = 0; i < 20; i++) {         rects[i] = new Shape(  );         rects[i].graphics.lineStyle(1);         rects[i].graphics.beginFill(Math.floor(Math.random(  )*0xFFFFFF), 1);         rects[i].graphics.drawRect(0, 0, 100, 50);         rects[i].x = Math.floor(Math.random(  )*500);         rects[i].y = Math.floor(Math.random(  )*400);         addChild(rects[i]);       }       stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownListener);     }     private function mouseDownListener (e:Event):void {       for (var i:int=0; i < numChildren; i++) {         getChildAt(i).rotation = Math.floor(Math.random(  )*360);       }     }     public function rotateChildren (container:DisplayObjectContainer):void {       for (var i:int = 0; i < container.numChildren; i++) {         var thisChild:DisplayObject = container.getChildAt(i);         if (thisChild is DisplayObjectContainer) {           rotateChildren(DisplayObjectContainer(thisChild));         } else {           thisChild.rotation =  Math.floor(Math.random(  )*360);         }       }     }   } }