Freigeben über


CDC::PolyDraw

Zeichnet einen Satz Liniensegmente und Bézier-Splines.

BOOL PolyDraw( 
   const POINT* lpPoints, 
   const BYTE* lpTypes, 
   int nCount  
);

Parameter

  • lpPoints
    Zeigt auf einem Array PUNKT Datenstrukturen, das die Endpunkte für jedes Liniensegment und die Endpunkte und die Steuerpunkte für jede Bézier-Splines enthält.

  • lpTypes
    Zeigt auf einem Array, das angibt, wie jeder Punkt im Array lpPoints verwendet wird. kann einen der folgenden Werte sein:

    • PT_MOVETO gibt an, dass dieser Punkt eine disjunkte Abbildung beginnt. Dieser Punkt wird die neue aktuelle Position.

    • PT_LINETO gibt an, dass eine Zeile von der aktuellen Position zu diesem Punkt gezeichnet werden soll, der dann die neue aktuelle Position ist.

    • PT_BEZIERTO gibt an, dass dieser Punkt ein Kontrollpunkt oder ein Endpunkt für Bézier-Splines ist.

      PT_BEZIERTO-Typen treten immer in Gruppen von drei auf. Die aktuelle Position definiert den Ausgangspunkt für die Bézier-Splines. Die ersten beiden PT_BEZIERTO Punkte sind die Steuerpunkte, und der dritte PT_BEZIERTO Punkt ist der Endpunkt. Der Endpunkt wird die neue aktuelle Position. Wenn es nicht drei nachfolgende PT_BEZIERTO Punkte gibt, Ergebnisse eines Fehlers.

      Ein PT_LINETO oder PT_BEZIERTO-Typ kann mit der folgenden Konstante kombiniert werden, indem der bitweisen Operator OR verwendet angeben, dass der entsprechende Punkt der letzte Punkt in einer Abbildung ist und die Abbildung geschlossen wird:

    • PT_CLOSEFIGURE gibt an, dass die Abbildung automatisch geschlossen wird, nachdem der PT_LINETO oder PT_BEZIERTO-Typ für diesen Punkt erfolgt. Eine Zeile wird von diesem Punkt zu letzten PT_MOVETO oder zum MoveTo Punkt gezeichnet.

      Dieses Flag wird mit dem PT_LINETO-Typ für eine Zeile oder mit dem PT_BEZIERTO-Typ des Endpunkts für Bézier-Splines kombiniert, indem Sie den bitweisen Operator OR verwendet. Die aktuelle Position wird dem Endpunkt der letzten Zeile festgelegt.

  • nCount
    Gibt die Gesamtzahl von Punkten im lpPoints Array, das gleiche an, das die Anzahl von Bytes im lpTypes Array.

Rückgabewert

ungleich 0 (null), wenn die Funktion erfolgreich; 0 andernfalls.

Hinweise

Diese Funktion kann verwendet werden, um disjunkte Abbildungen anstelle der nachfolgenden Aufrufe CDC::MoveTo, zu CDC::LineTo und zu CDC::PolyBezierTo-Memberfunktionen zu zeichnen. Die Zeilen und die Splines werden mithilfe des aktuellen Stift gezeichnet, und Abbildungen werden nicht ausgefüllt. Wenn es einen aktiven Pfad gibt, der mit der CDC::BeginPath-Memberfunktion gestartet wird, aufgerufen, fügt PolyDraw zum Pfad hinzugefügt. Die Punkte, die im lpPoints Array und in lpTypes enthalten sind, geben an, dass jeder Punkt Teil von CDC::MoveTo, von CDC::LineTo oder von CDC::BezierTo Vorgang ist. Es ist auch möglich, Abbildungen zu schließen. Diese Funktion aktualisiert die aktuelle Position.

Beispiel

Im Beispiel für CDC::BeginPath.

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CDC-Klasse

Hierarchiediagramm

CDC::BeginPath

CDC::EndPath

CDC::LineTo

CDC::MoveTo

CDC::PolyBezierTo

CDC::Polyline

PolyDraw