Compartir a través de


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

Pinceles y formas rellenas

Creación de un degradado de trazado

Rellenar una forma con un degradado de color

Matriz

Representación matricial de transformaciones

PathGradientBrush

PathGradientBrush::SetTransform

Transformaciones