다음을 통해 공유


확장

대부분의 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|