Condividi tramite


Metodo PathGradientBrush::GetTransform (gdipluspath.h)

Il metodo PathGradientBrush::GetTransform ottiene la matrice di trasformazione di questo pennello sfumatura di percorso.

Sintassi

Status GetTransform(
  [out] Matrix *matrix
);

Parametri

[out] matrix

Tipo: Matrice*

Puntatore a un oggetto Matrix che riceve la matrice di trasformazione.

Valore restituito

Tipo: Stato

Se il metodo ha esito positivo, restituisce Ok, che è un elemento dell'enumerazione Status .

Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .

Commenti

Un oggetto PathGradientBrush gestisce una matrice di trasformazione in grado di archiviare qualsiasi trasformazione affine. Quando si usa un pennello sfumatura di percorso per riempire un'area, GDI+ trasforma il percorso limite del pennello in base alla matrice di trasformazione del pennello e quindi riempie l'interno del percorso trasformato. Il percorso trasformato esiste solo durante il rendering; il percorso limite archiviato nell'oggetto PathGradientBrush non viene trasformato.

Esempio

Nell'esempio seguente viene creato un oggetto PathGradientBrush basato su una matrice di tre punti. I metodi PathGradientBrush::ScaleTransform e PathGradientBrush::TranslateTransform impostano gli elementi della matrice di trasformazione del pennello in modo che la matrice rappresenti una trasformazione composita (prima scala, quindi traduci). Tale trasformazione composita si applica al percorso limite del pennello, quindi la chiamata a FillRectangle riempie l'interno di un triangolo che è il risultato della scalabilità e della conversione del percorso limite. Il codice chiama il metodo PathGradientBrush::GetTransform dell'oggetto PathGradientBrush per ottenere la matrice di trasformazione del pennello e quindi chiama il metodo GetElements dell'oggetto Matrix recuperato per riempire una matrice con gli elementi della matrice.

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].
   } 
}

Requisiti

   
Client minimo supportato Windows XP, Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione gdipluspath.h (include Gdiplus.h)
Libreria Gdiplus.lib
DLL Gdiplus.dll

Vedi anche

Pennelli e forme piene

Creazione di una sfumatura di percorso

Riempimento di una forma con sfumatura di colore

Matrice

Rappresentazione tramite matrici delle trasformazioni

PathGradientBrush

PathGradientBrush::SetTransform

Trasformazioni