Share via


GetPath-Funktion (wingdi.h)

Die GetPath-Funktion ruft die Koordinaten ab, die die Endpunkte von Linien und die Kontrollpunkte von Kurven definieren, die in dem Pfad gefunden werden, der im angegebenen Gerätekontext ausgewählt ist.

Syntax

int GetPath(
  [in]  HDC     hdc,
  [out] LPPOINT apt,
  [out] LPBYTE  aj,
  [in]  int     cpt
);

Parameter

[in] hdc

Ein Handle für einen Gerätekontext, der einen geschlossenen Pfad enthält.

[out] apt

Ein Zeiger auf ein Array von POINT-Strukturen , das die Linienendpunkte und Kurvensteuerungspunkte in logischen Koordinaten empfängt.

[out] aj

Ein Zeiger auf ein Array von Bytes, das die Vertextypen empfängt. Dieser Parameter kann einen der folgenden Werte annehmen.

type BESCHREIBUNG
PT_MOVETO
Gibt an, dass der entsprechende Punkt im lpPoints-Parameter eine unzusammenstehende Abbildung startet.
PT_LINETO
Gibt an, dass der vorherige Punkt und der entsprechende Punkt in lpPoints die Endpunkte einer Zeile sind.
PT_BEZIERTO
Gibt an, dass der entsprechende Punkt in lpPoints ein Steuerungspunkt oder Endpunkt für eine Bézierkurve ist.

PT_BEZIERTO Werte treten immer in Sätzen von drei auf. Der Punkt im Pfad unmittelbar vor ihnen definiert den Ausgangspunkt für die Bézierkurve. Die ersten beiden PT_BEZIERTO Punkte sind die Kontrollpunkte, und der dritte PT_BEZIERTO Punkt ist der Endpunkt (wenn hartcodiert).

 

Ein PT_LINETO- oder PT_BEZIERTO-Wert kann mit dem folgenden Wert (mithilfe des bitweisen Operator OR) kombiniert werden, um anzugeben, dass der entsprechende Punkt der letzte Punkt in einer Abbildung ist und die Abbildung geschlossen werden sollte.

Flag Beschreibung
PT_CLOSEFIGURE
Gibt an, dass die Abbildung automatisch geschlossen wird, nachdem die entsprechende Linie oder Kurve gezeichnet wurde. Die Abbildung wird geschlossen, indem eine Linie vom Linien- oder Kurvenendpunkt zum Punkt gezeichnet wird, der dem letzten PT_MOVETO entspricht.

[in] cpt

Die Gesamtzahl der POINT-Strukturen , die in dem Array gespeichert werden können, auf das von lpPoints verwiesen wird. Dieser Wert muss mit der Anzahl von Bytes identisch sein, die im Array platziert werden können, auf das von lpTypes verwiesen wird.

Rückgabewert

Wenn der nSize-Parameter nichtzero ist, ist der Rückgabewert die Anzahl der aufgezählten Punkte. Wenn nSize 0 ist, ist der Rückgabewert die Gesamtzahl der Punkte im Pfad (und GetPath schreibt nichts in die Puffer). Wenn nSize nichtzero ist und kleiner als die Anzahl der Punkte im Pfad ist, ist der Rückgabewert 1.

Hinweise

Der durch den hdc-Parameter identifizierte Gerätekontext muss einen geschlossenen Pfad enthalten.

Die Punkte des Pfads werden in logischen Koordinaten zurückgegeben. Punkte werden im Pfad in Gerätekoordinaten gespeichert, sodass GetPath die Punkte von Gerätekoordinaten in logische Koordinaten ändert, indem die Inverse der aktuellen Transformation verwendet wird.

Die FlattenPath-Funktion kann vor GetPath aufgerufen werden, um alle Kurven im Pfad in Zeilensegmente zu konvertieren.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wingdi.h (einschließlich Windows.h)
Bibliothek Gdi32.lib
DLL Gdi32.dll

Weitere Informationen

FlattenPath

PUNKT

Pfadfunktionen

Pfadübersicht

PolyDraw

WidenPath