Compartilhar via


Método PathGradientBrush::GetTransform (gdipluspath.h)

O método PathGradientBrush::GetTransform obtém a matriz de transformação desse pincel de gradiente de caminho.

Sintaxe

Status GetTransform(
  [out] Matrix *matrix
);

Parâmetros

[out] matrix

Tipo: Matriz*

Ponteiro para um objeto Matrix que recebe a matriz de transformação.

Valor retornado

Tipo: Status

Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .

Se o método falhar, ele retornará um dos outros elementos da enumeração Status .

Comentários

Um objeto PathGradientBrush mantém uma matriz de transformação que pode armazenar qualquer transformação de affine. Quando você usa um pincel de gradiente de caminho para preencher uma área, o GDI+ transforma o caminho de limite do pincel de acordo com a matriz de transformação do pincel e preenche o interior do caminho transformado. O caminho transformado existe somente durante a renderização; o caminho de limite armazenado no objeto PathGradientBrush não é transformado.

Exemplos

O exemplo a seguir cria um objeto PathGradientBrush com base em uma matriz de três pontos. Os métodos PathGradientBrush::ScaleTransform e PathGradientBrush::TranslateTransform definem os elementos da matriz de transformação do pincel para que a matriz represente uma transformação composta (primeiro dimensione e converta). Essa transformação composta se aplica ao caminho de limite do pincel, portanto, a chamada para FillRectangle preenche o interior de um triângulo que é o resultado da escala e da tradução do caminho de limite. O código chama o método PathGradientBrush::GetTransform do objeto PathGradientBrush para obter a matriz de transformação do pincel e, em seguida, chama o método GetElements do objeto Matrix recuperado para preencher uma matriz com os 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 com suporte Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho gdipluspath.h (inclua Gdiplus.h)
Biblioteca Gdiplus.lib
DLL Gdiplus.dll

Confira também

Pincéis e formas preenchidas

Criando um Gradiente de Caminho

Preenchendo uma forma com um Gradiente de Cor

Matriz

Representação matricial de transformações

Pathgradientbrush

PathGradientBrush::SetTransform

Transformações