PathGradientBrush::SetTransform 메서드(gdipluspath.h)
PathGradientBrush::SetTransform 메서드는 이 경로 그라데이션 브러시의 변환 매트릭스를 설정합니다.
구문
Status SetTransform(
[in] const Matrix *matrix
);
매개 변수
[in] matrix
형식: const Matrix*
변환 행렬을 지정하는 Matrix 개체에 대한 포인터입니다.
반환 값
형식: 상태
메서드가 성공하면 Status 열거형의 요소인 확인을 반환합니다.
메서드가 실패하면 Status 열거형의 다른 요소 중 하나를 반환합니다.
설명
PathGradientBrush 개체에는 브러시의 경계 경로 역할을 하는 GraphicsPath 개체가 있습니다. 경로 그라데이션 브러시로 그리면 경계 경로 내의 영역만 채워집니다. 브러시의 변환 행렬이 ID 이외의 변환을 나타내도록 설정된 경우 렌더링 중에 경계 경로가 해당 행렬에 따라 변환되고 변환된 경로 내의 영역만 채워집니다.
변환은 렌더링 중에만 적용됩니다. PathGradientBrush 개체에 의해 저장된 경계 경로는 PathGradientBrush::SetTransform 메서드에 의해 변경되지 않습니다.
예제
다음 예제에서는 삼각형 경로를 기반으로 PathGradientBrush 개체를 만듭니다. Graphics::FillRectangle 메서드는 경로 그라데이션 브러시를 사용하여 삼각형 경로를 포함하는 사각형을 그립니다. 다음으로, 이 코드는 복합 변환(회전, 변환)을 나타내는 Matrix 개체를 만들고 해당 Matrix 개체의 주소를 PathGradientBrush 개체의 PathGradientBrush::SetTransform 메서드에 전달합니다. 이 코드는 FillRectangle 을 두 번째로 호출하여 변환된 경로 그라데이션 브러시를 사용하여 동일한 사각형을 그립니다.
VOID Example_SetTransform(HDC hdc)
{
Graphics graphics(hdc);
Point pts[] = {
Point(0, 0),
Point(100, 0),
Point(100, 100)};
Color cols[] = {
Color(255, 255, 0, 0), // red
Color(255, 0, 255, 0), // green
Color(255, 0, 0, 0)}; // black
INT count = 3;
PathGradientBrush pthGrBrush(pts, 3);
pthGrBrush.SetSurroundColors(cols, &count);
// Fill an area with the path gradient brush (no transformation).
graphics.FillRectangle(&pthGrBrush, 0, 0, 200, 200);
// Set the transformation for the brush (rotate, then translate).
Matrix matrix(0.0f, 1.0f, -1.0f, 0.0f, 150.0f, 60.0f);
pthGrBrush.SetTransform(&matrix);
// Fill the same area with the transformed path gradient brush.
graphics.FillRectangle(&pthGrBrush, 0, 0, 200, 200);
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP, Windows 2000 Professional [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | gdipluspath.h(Gdiplus.h 포함) |
라이브러리 | Gdiplus.lib |
DLL | Gdiplus.dll |
추가 정보
PathGradientBrush::GetTransform
PathGradientBrush::MultiplyTransform
PathGradientBrush::ResetTransform
PathGradientBrush::RotateTransform