다음을 통해 공유


전역 변형 사용

월드 변환은 Graphics 클래스의 속성입니다. 월드 변환을 지정하는 숫자는 3개의 ×3 행렬을 나타내는 Matrix 개체에 저장됩니다. MatrixGraphics 클래스에는 월드 변환 매트릭스에서 숫자를 설정하는 여러 가지 메서드가 있습니다. 이 섹션의 예제에서는 사각형을 쉽게 그릴 수 있고 사각형에 대한 변환의 영향을 쉽게 볼 수 있으므로 사각형을 조작합니다.

먼저 50 by 50 사각형을 만들고 원본(0, 0)에서 찾습니다. 원점은 클라이언트 영역의 왼쪽 위 모서리에 있습니다.

Rect rect(0, 0, 50, 50);
Pen pen(Color(255, 255, 0, 0), 0);
graphics.DrawRectangle(&pen, rect);

다음 코드는 x 방향으로 1.75 계수로 사각형을 확장하고 y 방향으로 0.5 계수로 사각형을 줄이는 스케일링 변환을 적용합니다.

Rect rect(0, 0, 50, 50);
Pen pen(Color(255, 255, 0, 0), 0);
graphics.ScaleTransform(1.75f, 0.5f);
graphics.DrawRectangle(&pen, rect);

그 결과 사각형은 원본보다 x 방향으로 길고 y 방향으로 짧습니다.

사각형을 크기 조정하는 대신 회전하려면 앞의 코드 대신 다음 코드를 사용합니다.

Rect rect(0, 0, 50, 50);
Pen pen(Color(255, 255, 0, 0), 0);
graphics.RotateTransform(28.0f);
graphics.DrawRectangle(&pen, rect);

사각형을 병진하려면 다음 코드를 사용합니다.

Rect rect(0, 0, 50, 50);
Pen pen(Color(255, 255, 0, 0), 0);
graphics.TranslateTransform(150.0f, 150.0f);
graphics.DrawRectangle(&pen, rect);