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
Création d’un dégradé de chemin
Remplissage d’une forme avec un dégradé de couleur
Représentation matricielle des transformations