Freigeben über


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

Die Graphics::D rawCurve-Methode zeichnet eine Kardinalspline.

Syntax

Status DrawCurve(
  [in] const Pen   *pen,
  [in] const Point *points,
  [in] INT         count,
  [in] INT         offset,
  [in] INT         numberOfSegments,
  [in] REAL        tension
);

Parameter

[in] pen

Typ: const Pen*

Zeiger auf einen Stift, der zum Zeichnen des Kardinalsplines verwendet wird.

[in] points

Typ: const Point*

Zeiger auf ein Array von Point-Objekten , die die Koordinaten angeben, die die Kardinalspline durchläuft.

[in] count

Typ: INT

Ganzzahl, die die Anzahl der Elemente im Punktarray angibt.

[in] offset

Typ: INT

Integer, die das Element im Punktarray angibt, das den Punkt angibt, an dem die Kardinalspline beginnt.

[in] numberOfSegments

Typ: INT

Eine ganze Zahl, die die Anzahl der Segmente im Kardinalspline angibt.

[in] tension

Typ: REAL

Reelle Zahl, die angibt, wie eng sich die Kurve durch die Koordinaten der Kardinalspline biegt.

Rückgabewert

Typ: Status

Wenn die Methode erfolgreich ist, gibt sie OK zurück, ein Element der Status-Enumeration .

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

Hinweise

Ein Segment wird als eine Kurve definiert, die zwei aufeinanderfolgende Punkte in der Kardinalspline verbindet. Der Endpunkt jedes Segments ist der Ausgangspunkt für das nächste Segment. Der parameter numberOfSegments darf nicht größer als der count-Parameter minus offset-Parameter plus 1 sein.

Beispiele

Im folgenden Beispiel wird eine Kardinalspline zeichnet. erstellt.

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

   // Define a Pen object and an array of Point objects.
   Pen greenPen(Color::Green, 3);
   Point point1(100, 100);
   Point point2(200, 50);
   Point point3(400, 10);
   Point point4(500, 100);

   Point curvePoints[4] = {
   point1,
   point2,
   point3,
   point4};

   Point* pcurvePoints = curvePoints;

   // Specify offset, number of segments to draw, and tension.
   int offset = 1;
   int segments = 2;
   REAL tension = 1.0;

   // Draw the curve.
   graphics.DrawCurve(&greenPen, curvePoints, 4, offset, segments, tension);

   //Draw the points in the curve.
   SolidBrush redBrush(Color::Red);
   graphics.FillEllipse(&redBrush, Rect(95, 95, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(195, 45, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(395, 5, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(495, 95, 10, 10));
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP, Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile gdiplusgraphics.h (include Gdiplus.h)
Bibliothek Gdiplus.lib
DLL Gdiplus.dll

Weitere Informationen

Kardinal-Splines

DrawClosedCurve-Methoden

Zeichnen von Kardinal-Splines

Grafiken

Stift

Point