확장
대부분의 CAD 및 그리기 애플리케이션은 사용자가 만든 출력의 크기를 조정하는 기능을 제공합니다. 크기 조정(또는 확대/축소) 기능을 포함하는 애플리케이션은 SetWorldTransform 함수를 호출하여 적절한 월드 공간을 페이지 공간 변환으로 설정합니다. 이 함수는 적절한 값을 포함하는 XFORM 구조체에 대한 포인터를 받습니다. XFORM의 eM11 및 eM22 멤버는 각각 가로 및 세로 크기 조정 구성 요소를 지정합니다.
크기 조정이 발생하면 개체를 구성하는 세로 및 가로줄(또는 벡터)이 x축 또는 y축과 관련하여 늘어나거나 압축됩니다. 다음 그림에서는 세계 좌표 공간에서 페이지 좌표 공간으로 복사할 때 원래 높이의 두 배로 세로로 크기가 조정된 20 x 20 단위 사각형을 보여 줍니다.
앞의 그림에서 원래 사각형의 측면을 정의하는 세로 선은 20 단위를 측정하고, 크기가 조정된 사각형의 측면을 정의하는 세로 선은 40 단위를 측정합니다.
수직 크기 조정은 다음 알고리즘으로 나타낼 수 있습니다.
y' = y * Dy
여기서 y'는 새 길이이고, y는 원래 길이이고, Dy는 수직 배율 인수입니다.
수평 크기 조정은 다음 알고리즘으로 나타낼 수 있습니다.
x' = x * Dx
여기서 x'는 새 길이이고 x는 원래 길이이고 Dx는 수평 배율 인수입니다.
세로 및 수평 크기 조정 변환은 2-by-2 행렬을 사용하여 단일 작업으로 결합할 수 있습니다.
|x' y'| = |Dx 0| * |x y|
|0 Dy|
크기 조정 변환을 생성한 2 x 2 행렬에는 다음 값이 포함됩니다.
|1 0|
|0 2|