Freigeben über


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

Die Graphics::D rawBeziers--Methode zeichnet eine Abfolge verbundener Bézier splines.

Syntax

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

Parameter

[in] pen

Typ: Stift-*

Zeiger auf einen Stift, der zum Zeichnen der Bézier splines verwendet wird.

[in] points

Typ: Punkt-*

Zeiger auf ein Array von Point-Objekten, die die Anfangs-, End- und Kontrollpunkte der Bézier-Splines angeben. Die Endkoordinate einer Bézier-Spline ist die Anfangskoordinate der nächsten Bézier-Spline.

[in] count

Typ: INT-

Ganze Zahl, die die Anzahl der Elemente in den Punkten Array angibt.

Rückgabewert

Typ: Status-

Wenn die Methode erfolgreich ist, wird Ok zurückgegeben, bei dem es sich um ein Element der Status Enumeration handelt.

Wenn die Methode fehlschlägt, wird eines der anderen Elemente der Status Enumeration zurückgegeben.

Bemerkungen

Eine Bézier-Spline durchgibt nicht ihre Kontrollpunkte. Die Kontrollpunkte wirken als Magnete und ziehen die Kurve in bestimmte Richtungen, um die Art und Weise zu beeinflussen, wie die Bézier splines biegen.

Beispiele

Das folgende Beispiel zeichnet ein Paar von Bézierkurven.


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));
}

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows XP, Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- gdiplusgraphics.h (include Gdiplus.h)
Library Gdiplus.lib
DLL- Gdiplus.dll

Siehe auch

Bézier Splines

DrawBezier-Methoden

DrawBeziers

Zeichnen von Bézier Splines

Grafik-

Stift-

Punkt-