Flash跟角度相关的属性有rotation,rotationX,rotationY,很好的运用这几个属性,能实现一些有趣的效果:

1、新建一fla文件RotationEfffect.fla

2、新建一as文件RotationEfffect.as

RotationEfffect.as代码如下:

package 

     import flash.display.GradientType;     
     import flash.display.BlendMode;     
     import flash.display.Shape; 
     import flash.display.Sprite; 
     import flash.events.Event;         


     [SWF(width = 900, height = 600, frameRate = 50)] 
 
     public class RotationEfffect extends Sprite 
     { 
         private var container:Sprite; 


         public function RotationEfffect() 
         { 
            container = new Sprite();
container.x = 450; 
             container.y = 300; 
             addChild(container); 
             container.rotationY = 90; 
             for(var i : int = 0 ;i < 48; i++) 
             { 
                 var s : Shape = new Shape(); 
                 //s.graphics.beginFill((0xcc0000 + (i % 16) * 0x10000),.6);
s.graphics.beginFill(Math.random()*0xffffff,.6);
                 s.graphics.drawCircle(Math.floor(i / 3) * 15, i, 25); 
                 //s.graphics.drawRect(Math.floor(i / 3) * 15 - 25, i - 25, 50,50); 
                 s.graphics.endFill(); 
                 container.addChild(s); 
             } 
             addEventListener(Event.ENTER_FRAME, onEnterFrame); 
         } 


         private function onEnterFrame(event : Event) : void 
         { 
             for(var i : int = 0 ;i < 48;i++) 
             { 
                 var s : Shape = container.getChildAt(i) as Shape; 
                 s.rotation += (i / 6) * .7; 
             } 
             container.rotation+=.7; 
             container.rotationY += .3; 
         } 
     } 

}

Ctrl+Enter测试效果如下:

Flash rotation

相关文章: