Point 객체 사용

Point 객체는 직교 좌표 쌍을 정의합니다. 이 객체는 2차원 좌표계에서의 위치를 나타냅니다. 여기에서 x는 가로 축을 나타내고 y는 세로 축을 나타냅니다.

Point 객체를 정의하려면 다음과 같이 xy 속성을 설정해야 합니다.

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 클래스의 다른 사용 방법

두 점 사이의 거리 확인

Point 클래스의 distance() 메서드를 사용하면 좌표 공간에서 두 점 사이의 거리를 확인할 수 있습니다. 예를 들어, 다음 코드에서는 같은 표시 객체 컨테이너에 있는 두 표시 객체(circle1circle2)의 등록 포인트 사이의 거리를 확인합니다.

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() 메서드를 사용하여 좌표를 Stage의 전역 좌표 공간으로 평행 이동할 수 있습니다. 예를 들어, 다음 코드에서는 서로 다른 표시 객체 컨테이너에 있는 두 표시 객체(circle1circle2)의 등록 포인트 사이의 거리를 확인합니다.

import flash.geom.*;
var pt1:Point = new Point(circle1.x, circle1.y);
pt1 = circle1.localToGlobal(pt1);
var pt2:Point = new Point(circle1.x, circle1.y);
pt2 = circle2.localToGlobal(pt2);
var distance:Number = Point.distance(pt1, pt2);

마찬가지로 Stage의 특정 지점에서 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

이러한 속성을 정의하는 데 사용됩니다.


Flash CS3

 

이 페이지에 의견 추가되면 전자 메일 알림 받기 | 의견 보고서

현재 페이지: http://livedocs.adobe.com/flash/9.0_kr/main/00000186.html