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 객체를 사용할 수 있습니다.
클래스
|
메서드 또는 속성
|
설명
|
DisplayObjectContainer
|
areInaccessibleObjectsUnderPoint()getObjectsUnderPoint()
|
표시 객체 컨테이너 내의 지점에서 객체 목록을 반환하는 데 사용됩니다.
|
BitmapData
|
hitTest()
|
BitmapData 객체 내의 픽셀 및 히트 검사 대상 지점을 정의하는 데 사용됩니다.
|
BitmapData
|
applyFilter()
copyChannel()
merge()
paletteMap()
pixelDissolve()
threshold()
|
작업을 정의하는 사각형 위치를 정의하는 데 사용됩니다.
|
Matrix
|
deltaTransformPoint()
transformPoint()
|
변환을 적용할 지점을 정의하는 데 사용됩니다.
|
Rectangle
|
bottomRight
size
topLeft
|
이러한 속성을 정의하는 데 사용됩니다.
|
|
|
|