Graphics::D rawBeziers(constPen*,constPoint*,INT) method (gdiplusgraphics.h)

La méthode Graphics::D rawBeziers dessine une séquence de splines de Bézier connectées.

Syntaxe

Status DrawBeziers(
  [in] const Pen   *pen,
  [in] const Point *points,
  [in] INT         count
);

Paramètres

[in] pen

Type : stylet* const

Pointeur vers un stylet utilisé pour dessiner les splines de Bézier.

[in] points

Type : const Point*

Pointeur vers un tableau d’objets Point qui spécifient les points de début, de fin et de contrôle des splines de Bézier. La coordonnée de fin d’une spline de Bézier est la coordonnée de départ de la spline de Bézier suivante.

[in] count

Type : INT

Entier qui spécifie le nombre d’éléments dans le tableau de points .

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

Une spline de Bézier ne passe pas par ses points de contrôle. Les points de contrôle agissent comme des aimants, tirant la courbe dans certaines directions pour influencer la façon dont les splines de Bézier se courbent.

Exemples

L’exemple suivant dessine une paire de courbes de Bézier.


VOID Example_DrawBeziers(HDC hdc)
{
   Graphics graphics(hdc);

   // Define a Pen object and an array of Point objects.
   Pen greenPen(Color(255, 0, 255, 0), 3);

   Point startPoint(100, 100);
   Point ctrlPoint1(200, 50);
   Point ctrlPoint2(400, 10);
   Point endPoint1(500, 100);
   Point ctrlPoint3(600, 200);
   Point ctrlPoint4(700, 400);
   Point endPoint2(500, 500);

   Point curvePoints[7] = {
      startPoint,
      ctrlPoint1,
      ctrlPoint2,
      endPoint1,
      ctrlPoint3,
      ctrlPoint4,
      endPoint2};

   // Draw the Bezier curves.
   graphics.DrawBeziers(&greenPen, curvePoints, 7);

   // Draw the control and end points.
   SolidBrush redBrush(Color(255, 255, 0, 0));
   graphics.FillEllipse(&redBrush, Rect(100 - 5, 100 - 5, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(500 - 5, 100 - 5, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(500 - 5, 500 - 5, 10, 10));
   SolidBrush blueBrush(Color(255, 0, 0, 255));
   graphics.FillEllipse(&blueBrush, Rect(200 - 5, 50 - 5, 10, 10));
   graphics.FillEllipse(&blueBrush, Rect(400 - 5, 10 - 5, 10, 10));
   graphics.FillEllipse(&blueBrush, Rect(600 - 5, 200 - 5, 10, 10));
   graphics.FillEllipse(&blueBrush, Rect(700 - 5, 400 - 5, 10, 10));
}

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 gdiplusgraphics.h (include Gdiplus.h)
Bibliothèque Gdiplus.lib
DLL Gdiplus.dll

Voir aussi

Bézier Splines

DrawBezier, méthodes

DrawBeziers

Dessin De Bézier Splines

Graphismes

Stylet

Point