GraphicsPath::GetBounds(RectF*,constMatrix*,constPen*) , méthode (gdipluspath.h)

La méthode GraphicsPath::GetBounds obtient un rectangle englobant pour ce chemin.

Syntaxe

Status GetBounds(
  RectF        *bounds,
  const Matrix *matrix,
  const Pen    *pen
);

Paramètres

bounds

Pointeur vers un objet RectF qui reçoit le rectangle englobant.

matrix

Optionnel. Pointeur vers un objet Matrix qui spécifie une transformation à appliquer à ce chemin avant que le rectangle englobant soit calculé. Le tracé n'est pas transformé de manière définitive ; la transformation est utilisée durant le calcul du rectangle englobant uniquement. La valeur par défaut est NULL.

pen

Optionnel. Pointeur vers un objet Pen qui influence la taille du rectangle englobant. Le rectangle englobant reçu dans les limites sera suffisamment grand pour entourer ce chemin lorsque le chemin est dessiné avec le stylet spécifié par ce paramètre. Cela garantit que le chemin d’accès est entouré par le rectangle englobant même si le chemin est dessiné avec un stylet large. La valeur par défaut est NULL.

Valeur retournée

Type:Status

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

Le rectangle retourné par cette méthode peut être plus grand que nécessaire pour entourer le chemin d’accès tel que dessiné par le stylet spécifié. Le rectangle est calculé pour permettre la limite de mitre du stylet dans les coins tranchants et pour permettre les embouts de fin du stylet.

Exemples

L’exemple suivant crée un chemin qui a une courbe et une ellipse. Le code dessine le chemin avec un stylet jaune épais et un fin stylet noir. La méthode GraphicsPath::GetBounds reçoit l’adresse du stylet jaune épais et calcule un rectangle englobant pour le chemin d’accès. Ensuite, le code dessine le rectangle englobant.


VOID GetBoundsExample(HDC hdc)
{
   Graphics graphics(hdc);
   Pen blackPen(Color(255, 0, 0, 0), 1);
   Pen yellowPen(Color(255, 255, 255, 0), 10);
   Pen redPen(Color(255, 255, 0, 0), 1);

   Point pts[] = {Point(120,120), 
                  Point(200,130), 
                  Point(150,200), 
                  Point(130,180)};

   // Create a path that has one curve and one ellipse.
   GraphicsPath path;
   path.AddClosedCurve(pts, 4);
   path.AddEllipse(120, 220, 100, 40);

   // Draw the path with a thick yellow pen and a thin black pen.
   graphics.DrawPath(&yellowPen, &path);
   graphics.DrawPath(&blackPen, &path);

   // Get the path's bounding rectangle.
   RectF rect;
   path.GetBounds(&rect, NULL, &yellowPen);
   graphics.DrawRectangle(&redPen, rect);  
}

Color(255, 0, 0, 0)Color(255, 255, 0,  0)

Configuration requise

   
En-tête gdipluspath.h

Voir aussi

Découpage avec une région

Génération et dessin de tracés

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

Graphicspath

Matrice

Chemins d’accès

Stylet

RectF