TextureBrush::RotateTransform 메서드(gdiplusbrush.h)
TextureBrush::RotateTransform 메서드는 이 텍스처 브러시의 현재 변환 매트릭스를 자체의 곱과 회전 행렬로 업데이트합니다.
구문
Status RotateTransform(
[in] REAL angle,
[in] MatrixOrder order
);
매개 변수
[in] angle
형식: REAL
회전 각도(각도)를 지정하는 실수입니다.
[in] order
형식: MatrixOrder
선택 사항입니다. 곱하기 순서를 지정하는 MatrixOrder 열거형의 요소입니다. MatrixOrderPrepend 는 회전 행렬이 왼쪽에 있음을 지정하고 MatrixOrderAppend 는 회전 행렬이 오른쪽에 있음을 지정합니다. 기본값은 MatrixOrderPrepend입니다.
반환 값
형식: 상태
메서드가 성공하면 Status 열거형의 요소인 Ok를 반환합니다.
메서드가 실패하면 Status 열거형의 다른 요소 중 하나를 반환합니다.
설명
단일 3×3 행렬은 모든 일련의 아핀 변환을 저장할 수 있습니다. 각각 아핀 변환을 나타내는 3×3 행렬이 여러 개 있는 경우 이러한 행렬의 곱은 변환의 전체 시퀀스를 나타내는 단일 3×3 행렬입니다. 해당 제품이 나타내는 변환을 복합 변환이라고 합니다. 예를 들어 행렬 R이 회전을 나타내고 행렬 T가 변환을 나타낸다고 가정합니다. 행렬 M 이 제품 RT인 경우 행렬 M 은 복합 변환을 나타냅니다. 먼저 회전한 다음 변환합니다.
행렬 곱셈 순서가 중요합니다. 일반적으로 행렬 제품 RT 는 행렬 제품 TR과 동일하지 않습니다. 이전 단락에 제공된 예제에서 RT 로 표시되는 복합 변환(첫 번째 회전, 변환)은 TR (첫 번째 변환, 회전)으로 표시되는 복합 변환과 다릅니다.
예제
다음 예제에서는 텍스처 브러시를 만들고 브러시의 변환을 설정합니다. 그런 다음 코드는 변환된 브러시를 사용하여 사각형을 채웁니다.
VOID Example_RotateTransform(HDC hdc)
{
Graphics graphics(hdc);
Image image(L"HouseAndTree.Gif");
TextureBrush textureBrush(&image);
textureBrush.ScaleTransform(3, 1); // first scale
textureBrush.RotateTransform(30, MatrixOrderAppend); // then rotate
graphics.FillRectangle(&textureBrush, 0, 0, 400, 200);
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP, Windows 2000 Professional [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | gdiplusbrush.h(Gdiplus.h 포함) |
라이브러리 | Gdiplus.lib |
DLL | Gdiplus.dll |