PathGradientBrush::GetTransform, méthode (gdipluspath.h)

La méthode PathGradientBrush::GetTransform obtient la matrice de transformation de ce pinceau de dégradé de chemin d’accès.

Syntaxe

Status GetTransform(
  [out] Matrix *matrix
);

Paramètres

[out] matrix

Type : Matrice*

Pointeur vers un objet Matrix qui reçoit la matrice de transformation.

Valeur retournée

Type : État

Si la méthode réussit, elle retourne Ok, qui est un élément de l’énumération Status .

Si la méthode échoue, elle retourne l’un des autres éléments de l’énumération Status .

Notes

Un objet PathGradientBrush conserve une matrice de transformation qui peut stocker n’importe quelle transformation affine. Lorsque vous utilisez un pinceau dégradé de chemin pour remplir une zone, GDI+ transforme le chemin de limite du pinceau en fonction de la matrice de transformation du pinceau, puis remplit l’intérieur du chemin transformé. Le chemin d’accès transformé existe uniquement pendant le rendu ; Le chemin de la limite stocké dans l’objet PathGradientBrush n’est pas transformé.

Exemples

L’exemple suivant crée un objet PathGradientBrush basé sur un tableau de trois points. Les méthodes PathGradientBrush::ScaleTransform et PathGradientBrush::TranslateTransform définissent les éléments de la matrice de transformation du pinceau afin que la matrice représente une transformation composite (première mise à l’échelle, puis traduction). Cette transformation composite s’applique au chemin de limite du pinceau, de sorte que l’appel à FillRectangle remplit l’intérieur d’un triangle qui est le résultat de la mise à l’échelle et de la traduction du chemin de la limite. Le code appelle la méthode PathGradientBrush::GetTransform de l’objet PathGradientBrush pour obtenir la matrice de transformation du pinceau, puis appelle la méthode GetElements de l’objet Matrix récupéré pour remplir un tableau avec les éléments de 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].
   } 
}

Configuration requise

   
Client minimal pris en charge Windows XP, Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête gdipluspath.h (include Gdiplus.h)
Bibliothèque Gdiplus.lib
DLL Gdiplus.dll

Voir aussi

Pinceaux et formes remplies

Création d’un dégradé de chemin

Remplissage d’une forme avec un dégradé de couleur

Matrice

Représentation matricielle des transformations

PathGradientBrush

PathGradientBrush::SetTransform

Transformations