Point 객체 사용Flash Player 9 이상, Adobe AIR 1.0 이상 Point 객체는 직교 좌표 쌍을 정의합니다. 이 객체는 2차원 좌표계에서의 위치를 나타냅니다. 여기에서 x는 가로 축을 나타내고 y는 세로 축을 나타냅니다. Point 객체를 정의하려면 다음과 같이 x 및 y 속성을 설정해야 합니다. import flash.geom.*; var pt1:Point = new Point(10, 20); // x == 10; y == 20 var pt2:Point = new Point(); pt2.x = 10; pt2.y = 20; 두 점 사이의 거리 확인Point 클래스의 distance() 메서드를 사용하면 좌표 공간에서 두 점 사이의 거리를 확인할 수 있습니다. 예를 들어 다음 코드에서는 같은 표시 객체 컨테이너에 있는 두 표시 객체(circle1과 circle2)의 등록 포인트 사이의 거리를 확인합니다. import flash.geom.*; var pt1:Point = new Point(circle1.x, circle1.y); var pt2:Point = new Point(circle2.x, circle2.y); var distance:Number = Point.distance(pt1, pt2); 좌표 공간 평행 이동두 표시 객체가 서로 다른 표시 객체 컨테이너에 있는 경우에는 객체가 서로 다른 좌표 공간에 있을 수 있습니다. 이런 경우 DisplayObject 클래스의 localToGlobal() 메서드를 사용하여 좌표를 스테이지의 전역 좌표 공간으로 평행 이동할 수 있습니다. 예를 들어 다음 코드에서는 서로 다른 표시 객체 컨테이너에 있는 두 표시 객체(circle1과 circle2)의 등록 포인트 사이의 거리를 확인합니다. import flash.geom.*; var pt1:Point = new Point(circle1.x, circle1.y); pt1 = circle1.localToGlobal(pt1); var pt2:Point = new Point(circle2.x, circle2.y); pt2 = circle2.localToGlobal(pt2); var distance:Number = Point.distance(pt1, pt2); 마찬가지로 스테이지의 특정 지점으로부터 target이라는 표시 객체의 등록 지점 거리를 확인하려면 DisplayObject 클래스의 localToGlobal() 메서드를 사용합니다. import flash.geom.*; var stageCenter:Point = new Point(); stageCenter.x = this.stage.stageWidth / 2; stageCenter.y = this.stage.stageHeight / 2; var targetCenter:Point = new Point(target.x, target.y); targetCenter = target.localToGlobal(targetCenter); var distance:Number = Point.distance(stageCenter, targetCenter); 각도 및 거리를 지정하여 표시 객체 이동Point 클래스의 polar() 메서드를 사용하면 표시 객체를 특정 각도 및 거리만큼 이동할 수 있습니다. 예를 들어 다음 코드에서는 myDisplayObject 객체를 60° 방향으로 100 픽셀만큼 이동합니다. import flash.geom.*; var distance:Number = 100; var angle:Number = 2 * Math.PI * (90 / 360); var translatePoint:Point = Point.polar(distance, angle); myDisplayObject.x += translatePoint.x; myDisplayObject.y += translatePoint.y; Point 클래스의 다른 사용 방법다음과 같은 메서드 및 속성과 함께 Point 객체를 사용할 수 있습니다.
|
|