PathGradientBrush::GetTransform 메서드(gdipluspath.h)
PathGradientBrush::GetTransform 메서드는 이 경로 그라데이션 브러시의 변환 행렬을 가져옵니다.
구문
Status GetTransform(
[out] Matrix *matrix
);
매개 변수
[out] matrix
형식: 행렬*
변환 행렬을 수신하는 Matrix 개체에 대한 포인터입니다.
반환 값
형식: 상태
메서드가 성공하면 Status 열거형의 요소인 확인을 반환합니다.
메서드가 실패하면 Status 열거형의 다른 요소 중 하나를 반환합니다.
설명
PathGradientBrush 개체는 모든 아핀 변환을 저장할 수 있는 변환 매트릭스를 유지 관리합니다. 경로 그라데이션 브러시를 사용하여 영역을 채우면 GDI+는 브러시의 변환 행렬에 따라 브러시의 경계 경로를 변환한 다음 변환된 경로의 내부를 채웁니다. 변환된 경로는 렌더링 중에만 존재합니다. PathGradientBrush 개체에 저장된 경계 경로가 변환되지 않습니다.
예제
다음 예제에서는 세 점의 배열을 기반으로 PathGradientBrush 개체를 만듭니다. PathGradientBrush::ScaleTransform 및 PathGradientBrush::TranslateTransform 메서드는 행렬이 복합 변환(첫 번째 눈금, 변환)을 나타내도록 브러시의 변환 행렬 요소를 설정합니다. 이 복합 변환은 브러시의 경계 경로에 적용되므로 FillRectangle 호출은 경계 경로 크기 조정 및 변환의 결과인 삼각형의 내부를 채웁니다. 이 코드는 PathGradientBrush 개체의 PathGradientBrush::GetTransform 메서드를 호출하여 브러시의 변환 행렬을 가져온 다음 검색된 Matrix 개체의 GetElements 메서드를 호출하여 배열을 행렬 요소로 채웁니다.
VOID Example_GetTransform(HDC hdc)
{
Graphics graphics(hdc);
// Create a path gradient brush and set its transformation.
Point pts[] = {Point(0, 0), Point(50, 0), Point(50, 50)};
PathGradientBrush pthGrBrush(pts, 3);
pthGrBrush.ScaleTransform(3.0f, 1.0f);
pthGrBrush.TranslateTransform(10.0f, 30.0f, MatrixOrderAppend);
graphics.FillRectangle(&pthGrBrush, 0, 0, 200, 200);
// Obtain information about the path gradient brush.
Matrix matrix;
REAL elements[6];
pthGrBrush.GetTransform(&matrix);
matrix.GetElements(elements);
for(INT j = 0; j <= 5; ++j)
{
// Inspect or use the value in elements[j].
}
}
요구 사항
지원되는 최소 클라이언트 | Windows XP, Windows 2000 Professional [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | gdipluspath.h(Gdiplus.h 포함) |
라이브러리 | Gdiplus.lib |
DLL | Gdiplus.dll |