Partager via


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

La méthode GraphicsPath ::GetBounds obtient un rectangle englobant pour ce chemin d’accès.

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 le calcul du rectangle englobant. Ce chemin n’est pas transformé définitivement ; la transformation est utilisée uniquement pendant le processus de calcul du rectangle englobant. La valeur par défaut est NULL.

pen

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

Valeur de retour

type : d’é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 .

Remarques

Le rectangle retourné par cette méthode peut être plus grand que nécessaire pour placer le chemin comme dessiné par le stylet spécifié. Le rectangle est calculé pour permettre la limite de mitreur du stylet aux angles aigus et pour permettre les majuscules de fin du stylet.

Exemples

L’exemple suivant crée un chemin qui a une courbe et un ellipse. Le code dessine le chemin avec un stylet jaune épais et un stylet noir mince. La méthode GraphicsPath ::GetBounds reçoit l’adresse du stylet jaune épais et calcule un rectangle englobant pour le chemin. 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)

Exigences

Exigence Valeur
d’en-tête gdipluspath.h

Voir aussi

découpage avec une région

construction et dessin des chemins d’accès

création d’un de dégradé de chemin d’accès

GraphicsPath

matrice

chemins d’accès

stylet

RectF