GnuSmalltalkUsersGuide:BaseChapter 129

From 흡혈양파의 번역工房
Jump to navigation Jump to search
Point

Point

네임스페이스 Smalltalk에 정의됨

슈퍼클래스: Object

범주: 언어-데이터 타입


단순한 디스플레이 조작을 위한 Point 클래스의 시작. 철저하게 검사되진 않았으나 기본 프리미티브나 Rectangle 클래스의 요구에는 잘 작동하는 듯 보인다.


Point 클래스: 인스턴스 생성

new

두 좌표가 0으로 설정된 포인트를 생성하라.

x: xInteger y: yInteger

주어진 좌표로 된 새 포인트를 생성하라.


Point: 접근하기

x

x 좌표를 응답하라.

x: aNumber

x 좌표를 aNumber로 설정하라.

x: anXNumber y: aYNumber

x와 y 좌표를 각각 anXNumber와 aYNumber로 설정하라.

y

y 좌표를 응답하라.

y: aNumber

y 좌표를 aNumber로 설정하라.


Point: 산술

* scale

Number 또는 Point가 가능한 scale을 수신자와 곱하라.

+ delta

Number 또는 Point가 가능한 delta를 수신자와 합하라.

- delta

Number 또는 Point가 가능한 delta를 수신자로부터 제하라.

/ scale

Number 또는 Point가 가능한 scale로 수신자를 나누되 정밀도를 손실하지 않도록 하라.

// scale

Number 또는 Point가 가능한 scale로 수신자를 나누되 음의 무한대에서 자른다.

abs

수신자의 절대값을 좌표로 가진 새 포인트를 응답하라.


Point: 비교하기

< aPoint

수신자가 aPoint보다 높고 좌측에 있는지 응답하라.

<= aPoint

aPoint가 수신자와 같은지, 아니면 수신자가 aPoint보다 높고 좌측에 위치하는지 응답하라.

= aPoint

수신자가 aPoint와 같은지 응답하라.

> aPoint

수신자가 aPoint보다 낮고 우측에 위치하는지 응답하라.

>= aPoint

aPoint가 수신자와 같은지, 아니면 수신자가 aPoint보다 낮고 우측에 위치하는지 응답하라.

max: aPoint

aPoint보다 낮고 우측에 위치한 경우 self를 응답하고, 그 외의 경우 aPoint를 응답하라.

min: aPoint

aPoint보다 높고 좌측에 위치한 경우 self를 응답하고, 그 외의 경우 aPoint를 응답하라.


Point: 변환하기

asPoint

수신자를 응답하라.

asRectangle

원점이 self인 빈 rectangle을 응답하라.

corner: aPoint

원점이 수신자이고 모서리가 aPoint인 Rectangle을 응답하라.

extent: aPoint

원점이 수신자이고 범위가 aPoint인 Rectangle을 응답하라.

hash

수신자에 대한 해시값을 응답하라.


Point: 포인트 함수

arcTan

(0, 0)에서 시작해 (1, 0)로 이동하는 ray와 수신자 사이의 각도(시계 반대 방향으로 측정)를 응답하라 - 예: 3시.

dist: aPoint

수신자와 aPoint 간 거리를 응답하라.

dotProduct: aPoint

수신자와 aPoint 간 내적(dot product)을 응답하라.

grid: aPoint

좌표가 가장 가까운 aPoint의 배수로 반올·내림하는 새 포인트를 응답하라.

normal

Point를 시계 방향으로 90도 회전하여 단위 벡터를 얻어라.

transpose

수신자의 좌표를 교환한 (x는 y가 되고 y는 x가 된다) 좌표를 가진 새 포인트를 응답하라.

truncatedGrid: aPoint

좌표가 음의 무한대로 반올·내림하는 새 포인트를 다수의 그리드로 (Point여야 한다) 응답하라.


Point: 인쇄하기

printOn: aStream

수신자에 대한 표현을 aStream 상에 인쇄하라.


Point: 보관하기

storeOn: aStream

수신자로 컴파일하는 스몰토크 코드를 aStream 상에 인쇄하라.


Point: 버림(truncation)과 반올림하기(round off)

rounded

좌표가 가장 가까운 정수로 반올·내림되는 새 포인트를 응답하라.

truncateTo: grid

좌표가 음의 무한대로 반올·내림되는 새 포인트를 다수의 그리드로 (Number여야 한다) 응답하라.


Notes