Método PathGradientBrush::GetTransform (gdipluspath.h)
El método PathGradientBrush::GetTransform obtiene la matriz de transformación de este pincel de degradado de ruta de acceso.
Sintaxis
Status GetTransform(
[out] Matrix *matrix
);
Parámetros
[out] matrix
Tipo: Matriz*
Puntero a un objeto Matrix que recibe la matriz de transformación.
Valor devuelto
Tipo: Estado
Si el método se realiza correctamente, devuelve Ok, que es un elemento de la enumeración Status .
Si se produce un error en el método, devuelve uno de los otros elementos de la enumeración Status .
Comentarios
Un objeto PathGradientBrush mantiene una matriz de transformación que puede almacenar cualquier transformación afín. Cuando se usa un pincel degradado de trazado para rellenar un área, GDI+ transforma la ruta de límite del pincel según la matriz de transformación del pincel y, a continuación, rellena el interior de la ruta transformada. La ruta de acceso transformada solo existe durante la representación; la ruta de acceso de límite almacenada en el objeto PathGradientBrush no se transforma.
Ejemplos
En el ejemplo siguiente se crea un objeto PathGradientBrush basado en una matriz de tres puntos. Los métodos PathGradientBrush::ScaleTransform y PathGradientBrush::TranslateTransform establecen los elementos de la matriz de transformación del pincel para que la matriz represente una transformación compuesta (primera escala y, a continuación, traduzca). Esa transformación compuesta se aplica a la ruta de límite del pincel, por lo que la llamada a FillRectangle rellena el interior de un triángulo que es el resultado del escalado y la traducción de la ruta de acceso del límite. El código llama al método PathGradientBrush::GetTransform del objeto PathGradientBrush para obtener la matriz de transformación del pincel y, a continuación, llama al método GetElements del objeto Matrix recuperado para rellenar una matriz con los elementos de matriz.
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].
}
}
Requisitos
Cliente mínimo compatible | Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | gdipluspath.h (incluya Gdiplus.h) |
Library | Gdiplus.lib |
Archivo DLL | Gdiplus.dll |
Consulte también
Creación de un degradado de trazado
Rellenar una forma con un degradado de color
Representación matricial de transformaciones