GraphicsPath-Funktionen
Windows GDI+ macht eine flache API verfügbar, die aus ca. 600 Funktionen besteht, die in Gdiplus.dll implementiert und in Gdiplusflat.h deklariert werden. Die Funktionen in der GDI+-API werden von einer Sammlung von ca. 40 C++-Klassen umschlossen. Es wird empfohlen, die Funktionen in der flachen API nicht direkt auf aufruft. Wenn Sie Aufrufe von GDI+, sollten Sie dazu die Methoden und Funktionen aufrufen, die von den C++-Wrappern bereitgestellt werden. Der Microsoft-Produktsupport bietet keine Unterstützung für Code, der die flache API direkt aufruft. Weitere Informationen zur Verwendung dieser Wrappermethoden finden Sie unter GDI+ Flat-API.
Die folgenden flachen API-Funktionen werden von der GraphicsPath C++-Klasse umschlossen.
GraphicsPath-Funktionen und entsprechende Wrappermethoden
| Flat-Funktion | Wrappermethode | Bemerkungen |
|---|---|---|
| GpStatus WINGDIPAPI GdipCreatePath(GpFillMode brushMode, GpPath * * path) |
GraphicsPath::GraphicsPath(IN FillMode fillMode = FillModeAlternate) | Erstellt ein GraphicsPath-Objekt und initialisiert den Füllmodus. Dies ist der Standardkonstruktor |
| GpStatus WINGDIPAPI GdipCreatePath2(GDIPCONST * GpPointF-Punkte, GDIPCONST-BYTE-Typen, * INT-Anzahl, GpFillMode fillMode, GpPath-Pfad) * * |
GraphicsPath::GraphicsPath(IN const PointF * points, IN const BYTE * types, IN INT count, IN FillMode fillMode = FillModeAlternate) | Erstellt ein GraphicsPath-Objekt basierend auf einem Array von Punkten, einem Array von Typen und einem Füllmodus. |
| GpStatus WINGDIPAPI GdipCreatePath2I(GDIPCONST GpPoint * points, GDIPCONST BYTE * types, INT count, GpFillMode fillMode, GpPath * * path) |
GraphicsPath::GraphicsPath(IN const Point * points, IN const BYTE * types, IN INT count, IN FillMode fillMode = FillModeAlternate) | Erstellt ein GraphicsPath-Objekt basierend auf einem Array von Punkten, einem Array von Typen und einem Füllmodus. |
| GpStatus WINGDIPAPI GdipClonePath(GpPath * path, GpPath * * clonePath) |
GraphicsPath::GraphicsPath * Clone() const | Erstellt ein neues GraphicsPath-Objekt und initialisiert es mit dem Inhalt dieses GraphicsPath-Objekts. |
| GpStatus WINGDIPAPI GdipDeletePath(GpPath * path) |
GraphicsPath::~GraphicsPath() |
Gibt vom GraphicsPath-Objekt verwendete Ressourcen frei. |
| GpStatus WINGDIPAPI GdipResetPath(GpPath * path) |
GraphicsPath::Reset | Leert den Pfad und legt den Füllmodus auf FillModeAlternate fest. |
| GpStatus WINGDIPAPI GdipGetPointCount(GpPath * path, INT * count) |
INT GraphicsPath::GetPointCount | Ruft die Anzahl der Punkte im Datenpunktearray dieses Pfads ab. Dies ist identisch mit der Anzahl der Typen im Array von Punkttypen des Pfads. |
| GpStatus WINGDIPAPI GdipGetPathTypes(GpPath * path, BYTE * types, INT count) |
Status GraphicsPath::GetPathTypes(OUT BYTE * types, IN IN INT count) const | Ruft das Array von Punkttypen dieses Pfads ab. |
| GpStatus WINGDIPAPI GdipGetPathPoints(GpPath, * * GpPointF-Punkte, INT-Anzahl) |
Status GraphicsPath::GetPathPoints(OUT PointF * points, IN INT count) const | Ruft das Array von Punkten dieses Pfads ab. Das -Array enthält die Endpunkte und Steuerungspunkte der Linien und Bézier-Splines, die zum Zeichnen des Pfads verwendet werden. |
| GpStatus WINGDIPAPI GdipGetPathPointsI(GpPath * , GpPoint * points, INT count) |
Status GraphicsPath::GetPathPoints(OUT Point * Points, IN INT count) const | Ruft das Array von Punkten dieses Pfads ab. Das -Array enthält die Endpunkte und Steuerungspunkte der Linien und Bézier-Splines, die zum Zeichnen des Pfads verwendet werden. |
| GpStatus WINGDIPAPI GdipGetPathFillMode(GpPath * path, GpFillMode * fillmode) |
FillMode GraphicsPath::GetFillMode() const | Ruft den Füllmodus dieses Pfads ab. |
| GpStatus WINGDIPAPI GdipSetPathFillMode(GpPath * path, GpFillMode fillmode) |
Status GraphicsPath::SetFillMode(IN FillMode fillmode) | Legt den Füllmodus dieses Pfads fest. |
| GpStatus WINGDIPAPI GdipGetPathData(GpPath * path, GpPathData * pathData) |
Status GraphicsPath::GetPathData(OUT PathData * pathData) const | Ruft ein Array von Punkten und ein Array von Punkttypen aus diesem Pfad ab. Zusammen definieren diese beiden Arrays die Linien, Kurven, Abbildungen und Marker dieses Pfads. |
| GpStatus WINGDIPAPI GdipStartPathFigure(GpPath * path) |
Status GraphicsPath::StartFigure() | Startet eine neue Figur, ohne die aktuelle zu schließen. Nachfolgende Punkte, die diesem Pfad hinzugefügt werden, werden der neuen Abbildung hinzugefügt. |
| GpStatus WINGDIPAPI GdipClosePathFigure(GpPath * path) |
Status GraphicsPath::CloseFigure() | Schließt die aktuelle Abbildung dieses Pfads. |
| GpStatus WINGDIPAPI GdipClosePathFigures(GpPath * path) |
Status GraphicsPath::CloseAllFigures() | Schließt alle offenen Abbildungen in diesem Pfad. |
| GpStatus WINGDIPAPI GdipSetPathMarker(GpPath * path) |
Status GraphicsPath::SetMarker() | Bestimmt den letzten Punkt in diesem Pfad als Markerpunkt. |
| GpStatus WINGDIPAPI GdipClearPathMarkers(GpPath * path) |
Status GraphicsPath::ClearMarkers() | Entfernt die Marker aus diesem Pfad. |
| GpStatus WINGDIPAPI GdipReversePath(GpPath * path) |
Status GraphicsPath::Reverse() | Kehrt die Reihenfolge der Punkte um, die die Linien und Kurven dieses Pfads definieren. |
| GpStatus WINGDIPAPI GdipGetPathLastPoint(GpPath * path, GpPointF * lastPoint) |
Status GraphicsPath::GetLastPoint(OUT PointF * lastPoint) const | Ruft den Endpunkt der letzten Abbildung in diesem Pfad ab. |
| GpStatus WINGDIPAPI GdipAddPathLine(GpPath * path, REAL x1, REAL y1, REAL x2, REAL y2) |
Status GraphicsPath::AddLine(IN REAL x1, IN REAL y1, IN REAL x2, IN REAL y2) | Fügt der aktuellen Abbildung dieses Pfads eine Zeile hinzu. |
| GpStatus WINGDIPAPI GdipAddPathLine2(GpPath-Pfad, * GDIPCONST * GpPointF-Punkte, INT-Anzahl) |
Status GraphicsPath::AddLines(IN const PointF * points, IN INT count) | Fügt der aktuellen Abbildung dieses Pfads eine Sequenz verbundener Linien hinzu. |
| GpStatus WINGDIPAPI GdipAddPathArc(GpPath * path, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle) |
Status GraphicsPath::AddArc(IN REAL x, IN REAL y, IN REAL width, IN REAL height, IN REAL startAngle, IN REAL sweepAngle) | Fügt der aktuellen Abbildung dieses Pfads einen elliptischen Bogen hinzu. |
| GpStatus WINGDIPAPI GdipAddPathBezier(GpPath * path, REAL x1, REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4) |
Status GraphicsPath::AddBezier(IN REAL x1, IN REAL y1, IN REAL x2, IN REAL y2, IN REAL x3, IN REAL y3, IN REAL x4, IN REAL y4) | Fügt der aktuellen Abbildung dieses Pfads einen Bézier-Spline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathBeziers(GpPath * path, GDIPCONST GpPointF * points, INT count) |
Status GraphicsPath::AddBeziers(IN const PointF * points, IN IN INT count) | Fügt der aktuellen Abbildung dieses Pfads eine Sequenz verbundener Bézier-Splines hinzu. |
| GpStatus WINGDIPAPI GdipAddPathCurve(GpPath * path, GDIPCONST GpPointF * points, INT count) |
Status GraphicsPath::AddCurve(IN const PointF * points, IN IN INT count) | Fügt der aktuellen Abbildung dieses Pfads einen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathCurve2(GpPath-Pfad, * GDIPCONST GpPointF-Punkte, * INT-Anzahl, REAL-Zählung) |
Status GraphicsPath::AddCurve(IN const PointF * points, IN IN INT count, IN REAL- | Fügt der aktuellen Abbildung dieses Pfads einen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathCurve3(GpPath-Pfad, * GDIPCONST GpPointF-Punkte, * INT-Anzahl, INT-Offset, INT numberOfSegments, REAL-Besatz) |
Status GraphicsPath::AddCurve(IN const PointF * points, IN IN INT count, IN IN INT offset, IN INT numberOfSegments, IN REAL count) | Fügt der aktuellen Abbildung dieses Pfads einen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathClosedCurve(GpPath * path, GDIPCONST GpPointF * points, INT count) |
Status GraphicsPath::AddClosedCurve(IN const PointF * points, IN IN INT count) | Fügt diesem Pfad einen geschlossenen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathClosedCurve2(GpPath * path, GDIPCONST GpPointF * points, INT count, REAL gpu) |
Status GraphicsPath::AddClosedCurve(IN const PointF * points, IN INT count, IN REAL 1) | Fügt diesem Pfad einen geschlossenen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathRectangle(GpPath * path, REAL x, REAL y, REAL width, REAL height) |
Status GraphicsPath::AddRectangle(IN const RectF& rect) | Fügt diesem Pfad ein Rechteck hinzu. Die Parameter x, y, width und height in der flachen Funktion geben ein Rechteck an, das dem rect-Parameter in der Wrappermethode entspricht. |
| GpStatus WINGDIPAPI GdipAddPathRectangles(GpPath * path, GDIPCONST GpRectF * rects, INT count) |
Status GraphicsPath::AddRectangles(IN const RectF * rects, IN INT count) | Fügt diesem Pfad eine Sequenz von Rechtecke hinzu. |
| GpStatus WINGDIPAPI GdipAddPathEllipse(GpPath * path, REAL x, REAL y, REAL width, REAL height) |
Status GraphicsPath::AddEllipse(IN REAL x, IN REAL y, IN REAL width, IN REAL height) | Fügt diesem Pfad eine Ellipse hinzu. |
| GpStatus WINGDIPAPI GdipAddPathPie(GpPath * path, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle) |
Status GraphicsPath::AddPie(IN REAL x, IN REAL y, IN REAL width, IN REAL height, IN REAL startAngle, IN REAL sweepAngle) | Fügt diesem Pfad ein Kreis hinzu. Ein Bogen ist ein Teil einer Ellipse, und ein Kreis ist ein Teil des Bereichs, der von einer Ellipse umschlossen ist. Ein Kreis wird durch einen Bogen und zwei Linien (Ränder) umrandet, die von der Mitte der Ellipse zu den Endpunkten des Bogens wechseln. |
| GpStatus WINGDIPAPI GdipAddPathPolygon(GpPath * path, GDIPCONST GpPointF * points, INT count) |
Status GraphicsPath::AddPolygon(IN const PointF * points, IN IN INT count) | Fügt diesem Pfad ein Vieleck hinzu. |
| GpStatus WINGDIPAPI GdipAddPathPath(GpPath * path, GDIPCONST GpPath * addingPath, BOOL connect) |
Status GraphicsPath::AddPath(IN const GraphicsPath * addingPath, IN BOOL connect) | Fügt diesem Pfad einen Pfad hinzu. |
| GpStatus WINGDIPAPI GdipAddPathString(GpPath * path, GDIPCONST WCHAR * string, INT length, GDIPCONST GpFontFamily * family, INT style, REAL emSize, GDIPCONST RectF * layoutRect, GDIPCONST GpStringFormat * format) |
Status GraphicsPath::AddString( IN const WCHAR * string, IN IN INT length, IN const FontFamily * family, IN IN INT style, IN REAL emSize, IN const RectF &layoutRect, IN const StringFormat * format ) | Fügt diesem Pfad die Kontur einer Zeichenfolge hinzu. |
| GpStatus WINGDIPAPI GdipAddPathStringI(GpPath * path, GDIPCONST WCHAR * string, INT length, GDIPCONST GpFontFamily * family, INT style, REAL emSize, GDIPCONST Rect * layoutRect, GDIPCONST GpStringFormat * format) |
Status GraphicsPath::AddString( IN const WCHAR * string, IN IN INT length, IN const FontFamily * family, IN IN INT style, IN REAL emSize, IN const Rect &layoutRect, IN const StringFormat * format ) | Fügt diesem Pfad die Kontur einer Zeichenfolge hinzu. |
| GpStatus WINGDIPAPI GdipAddPathLineI(GpPath * path, INT x1, INT y1, INT x2, INT y2) |
Status GraphicsPath::AddLine(IN INT x1, IN INT y1, IN INT x2, IN INT y2) | Fügt der aktuellen Abbildung dieses Pfads eine Zeile hinzu. |
| GpStatus WINGDIPAPI GdipAddPathLine2I(GpPath * path, GDIPCONST GpPoint * points, INT count) |
Status GraphicsPath::AddLines(IN const Point * points, IN IN INT count) | Fügt der aktuellen Abbildung dieses Pfads eine Sequenz verbundener Linien hinzu. |
| GpStatus WINGDIPAPI GdipAddPathArcI(GpPath * path, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle) |
Status GraphicsPath::AddArc(IN IN INT x, IN INT y, IN IN INT width, IN IN INT height, IN REAL startAngle, IN REAL sweepAngle) | Fügt der aktuellen Abbildung dieses Pfads einen elliptischen Bogen hinzu. |
| GpStatus WINGDIPAPI GdipAddPathBezierI(GpPath * path, INT x1, INT y1, INT x2, INT y2, INT x3, INT y3, INT x4, INT y4) |
Status GraphicsPath::AddBezier(IN INT x1, IN INT y1, IN INT x2, IN INT y2, IN INT x3, IN INT y3, IN INT x4, IN INT y4) | Fügt der aktuellen Abbildung dieses Pfads einen Bézier-Spline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathBeziersI(GpPath * path, GDIPCONST GpPoint * points, INT count) |
Status GraphicsPath::AddBeziers(IN const Point * points, IN IN INT count) | Fügt der aktuellen Abbildung dieses Pfads einen Bézier-Spline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathCurveI(GpPath * path, GDIPCONST GpPoint * points, INT count) |
Status GraphicsPath::AddCurve(IN const Point * points, IN IN INT count) | Fügt der aktuellen Abbildung dieses Pfads einen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathCurve2I(GpPath-Pfad, * GDIPCONST * GpPoint-Punkte, INT-Anzahl, REAL-Tropen) |
Status GraphicsPath::AddCurve(IN const Point * points, IN IN INT count, IN REAL- | Fügt der aktuellen Abbildung dieses Pfads einen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathCurve3I(GpPath * path, GDIPCONST GpPoint * points, INT count, INT offset, INT numberOfSegments, REAL gpu) |
Status GraphicsPath::AddCurve(IN const Point * points, IN IN INT count, IN IN INT offset, IN INT numberOfSegments, IN REAL- | Fügt der aktuellen Abbildung dieses Pfads einen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathClosedCurveI(GpPath * path, GDIPCONST GpPoint * points, INT count) |
Status GraphicsPath::AddClosedCurve(IN const Point * points, IN IN INT count) | Fügt diesem Pfad einen geschlossenen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathClosedCurve2I(GpPath * path, GDIPCONST GpPoint * points, INT count, REAL gpu) |
Status GraphicsPath::AddClosedCurve(IN const Point * points, IN IN INT count, IN REAL- | Fügt diesem Pfad einen geschlossenen Kardinalspline hinzu. |
| GpStatus WINGDIPAPI GdipAddPathRectangleI(GpPath * path, INT x, INT y, INT width, INT height) |
Status GraphicsPath::AddRectangle(IN const Rect& rect) | Fügt diesem Pfad ein Rechteck hinzu. Die Parameter x, y, width und height in der flachen Funktion geben ein Rechteck an, das dem rect-Parameter in der Wrappermethode entspricht. |
| GpStatus WINGDIPAPI GdipAddPathRectanglesI(GpPath * path, GDIPCONST GpRect * rects, INT count) |
Status GraphicsPath::AddRectangles(IN const Rect * rects, INT count) | Fügt diesem Pfad eine Sequenz von Rechtecke hinzu. |
| GpStatus WINGDIPAPI GdipAddPathEllipseI(GpPath * path, INT x, INT y, INT width, INT height) |
Status GraphicsPath::AddEllipse(IN INT x, IN INT y, IN INT width, IN INT height) | Fügt diesem Pfad eine Ellipse hinzu. |
| GpStatus WINGDIPAPI GdipAddPathPieI(GpPath * path, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle) |
Status GraphicsPath::AddPie(IN IN INT x, IN INT y, IN IN INT width, IN INT height, IN REAL startAngle, IN REAL sweepAngle) | Fügt diesem Pfad ein Kreis hinzu. Ein Bogen ist ein Teil einer Ellipse, und ein Kreis ist ein Teil des Bereichs, der von einer Ellipse umschlossen ist. Ein Kreis wird durch einen Bogen und zwei Linien (Ränder) umrandet, die von der Mitte der Ellipse zu den Endpunkten des Bogens wechseln. |
| GpStatus WINGDIPAPI GdipAddPathPolygonI(GpPath * path, GDIPCONST GpPoint * points, INT count) |
Status GraphicsPath::AddPolygon(IN const Point * points, IN IN INT count) | Fügt diesem Pfad ein Vieleck hinzu. |
| GpStatus WINGDIPAPI GdipFlattenPath(GpPath * path, GpMatrix * matrix, REAL flatness) |
Status GraphicsPath::Flatten(IN const Matrix * matrix = NULL, IN REAL flatness = FlatnessDefault) | Wendet eine Transformation auf diesen Pfad an und konvertiert jede Kurve im Pfad in eine Sequenz verbundener Linien. |
| GpStatus WINGDIPAPI GdipWindingModeOutline( GpPath * path, GpMatrix * matrix, REAL flatness ) |
Status GraphicsPath::Outline( IN const Matrix * matrix = NULL, IN REAL flatness = FlatnessDefault ) | Transformiert und flacht diesen Pfad und konvertiert dann die Datenpunkte dieses Pfads so, dass sie nur die Gliederung des Pfads darstellen. |
| GpStatus WINGDIPAPI GdipWidenPath( GpPath * nativePath, GpPen * pen, GpMatrix * matrix, REAL flatness ) |
Status GraphicsPath::Widen( IN const Pen * pen, IN const Matrix * matrix = NULL, IN REAL flatness = FlatnessDefault ) | Ersetzt diesen Pfad durch Kurven, die den Bereich umschließen, der ausgefüllt wird, wenn dieser Pfad von einem angegebenen Stift gezeichnet wird. Diese Methode flacht auch den Pfad. |
| GpStatus WINGDIPAPI GdipWarpPath(GpPath * path, GpMatrix * matrix, GDIPCONST GpPointF * points, INT count, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, WarpMode warpMode, REAL flatness) |
Status GraphicsPath::Warp(IN const PointF * destPoints, IN IN INT count, IN const RectF& srcRect, IN const Matrix * matrix = NULL, IN WarpMode warpMode = WarpModePerspective, IN REAL flatness = FlatnessDefault) | Wendet eine Warptransformation auf diesen Pfad an. Diese Methode flacht auch den Pfad (konvertiert in eine Sequenz von geraden Linien). Die Parameter srcx, srcy, srcwidth und srcheight in der flat-Funktion geben ein Rechteck an, das dem srcRect-Parameter in der Wrappermethode entspricht. |
| GpStatus WINGDIPAPI GdipTransformPath(GpPath-Pfad, * * GpMatrix-Matrix) |
Status GraphicsPath::Transform(IN const Matrix * matrix) | Multipliziert jeden Datenpunkt dieses Pfads mit einer angegebenen Matrix. |
| GpStatus WINGDIPAPI GdipGetPathWorldBounds(GpPath * path, GpRectF * bounds, GDIPCONST GpMatrix * matrix, GDIPCONST GpPen * pen) |
Status GraphicsPath::GetBounds(OUT RectF * bounds, IN const Matrix * matrix, IN const pen * pen) const | Ruft ein umgrenzendes Rechteck für diesen Pfad ab. |
| GpStatus WINGDIPAPI GdipGetPathWorldBoundsI(GpPath * path, GpRect * bounds, GDIPCONST GpMatrix * matrix, GDIPCONST GpPen * pen) |
Status GraphicsPath::GetBounds(OUT Rect * bounds, IN const Matrix * matrix, IN const pen * pen) const | Ruft ein umgrenzendes Rechteck für diesen Pfad ab. |
| GpStatus WINGDIPAPI GdipIsVisiblePathPoint(GpPath * path, REAL x, REAL y, GpGraphics * graphics, BOOL * result) |
BOOL GraphicsPath::IsVisible(IN REAL x, IN REAL y, IN const Graphics * g) const | Bestimmt, ob ein angegebener Punkt in dem Bereich liegt, der gefüllt wird, wenn dieser Pfad von einem angegebenen Graphics-Objekt gefüllt wird. |
| GpStatus WINGDIPAPI GdipIsVisiblePathPointI(GpPath * path, INT x, INT y, GpGraphics * graphics, BOOL * result) |
BOOL GraphicsPath::IsVisible(IN INT x, IN INT y, IN const Graphics * g) const | Bestimmt, ob ein angegebener Punkt in dem Bereich liegt, der gefüllt wird, wenn dieser Pfad von einem angegebenen Graphics-Objekt gefüllt wird. |
| GpStatus WINGDIPAPI GdipIsOutlineVisiblePathPoint(GpPath * path, REAL x, REAL y, GpPen * pen, GpGraphics * graphics, BOOL * result) |
BOOL GraphicsPath::IsOutlineVisible(IN REAL x, IN REAL y, IN const Pen * pen, IN const Graphics * g) const | Bestimmt, ob ein angegebener Punkt die Kontur dieses Pfads berührt, wenn der Pfad von einem angegebenen Grafikobjekt und einem angegebenen Stift gezeichnet wird. |
| GpStatus WINGDIPAPI GdipIsOutlineVisiblePathPointI(GpPath * path, INT x, INT y, GpPen * pen, GpGraphics * graphics, BOOL * result) |
BOOL GraphicsPath::IsOutlineVisible(IN INT x, INT y, IN const Pen * pen, IN const Graphics * g) const | Bestimmt, ob ein angegebener Punkt die Kontur dieses Pfads berührt, wenn der Pfad von einem angegebenen Grafikobjekt und einem angegebenen Stift gezeichnet wird. |