GnuSmalltalkUsersGuide:BaseChapter 129

From 흡혈양파의 번역工房
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
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