2. polar( len:Number, angle:Number ) : Point
-> 한 점에서 특정 반경 안에 있는 점들을 구할 수 있다.
-
- 30/1000 초로 300번 loop 함수 이벤트 등록해주고, Mark라는 링키지 걸어둔 무비클립을 생성후,
tempPoint라는 Point 객체를 초기화하는데, 0에서100사이인 원의 반경으로 Math.random()*Math.PI*2
만큼의 각을 가진 점의 위치를 스테이지 정중에서부터 떨어뜨려 무비클립의 좌표에 넣는다.

-> 원래는 이런 소스였으나, 삭제하고 다시 그리는 모양으로 !
[code as3]
package classes.view
{
import flash.display.Sprite;
import flash.display.MovieClip;
import flash.events.TimerEvent;
import flash.geom.Point;
import flash.utils.Timer;
public class Main extends Sprite
{
public function Main()
{
super();
config();
}
private var cx:Number = stage.stageWidth / 2;
private var cy:Number = stage.stageHeight / 2;
private function config() : void
{
var timer:Timer = new Timer( 30 );
timer.addEventListener( TimerEvent.TIMER, loop );
timer.start();
}
private function loop( e:TimerEvent ) : void
{
if(numChildren > 150)
{
while(numChildren)
{
removeChildAt(0);
}
}
var temp:MovieClip = new Mark();
var tempPoint:Point = new Point();
tempPoint = Point.polar( Math.random()*100, Math.random()*Math.PI*2 );
temp.x = tempPoint.x + cx;
temp.y = tempPoint.y + cy;
addChild( temp );
}
}
}
[/code]
Timer 속성에서 count가 300번인 것을 없애고, loop함수에 numChild 속성을 이용하여 0.03초 마다
이벤트에 의해 나타나는 무비클립을 150번까지 if문으로 제한을 두고 151번째에 removeChildAt 속성을
이용해 한번 싹~ 지워준뒤 다시 그려준다.
-
-
-
-


댓글 없음:
댓글 쓰기