ID2D1GeometrySink-Schnittstelle (d2d1.h)
Beschreibt einen geometrischen Pfad, der Linien, Bögen, kubische Bézierkurven und quadratische Bézierkurven enthalten kann.
Vererbung
Die ID2D1GeometrySink-Schnittstelle erbt von ID2D1SimplifiedGeometrySink. ID2D1GeometrySink verfügt auch über folgende Membertypen:
Methoden
Die ID2D1GeometrySink-Schnittstelle verfügt über diese Methoden.
ID2D1GeometrySink::AddArc Fügt der Pfadgeometrie einen einzelnen Bogen hinzu. |
ID2D1GeometrySink::AddArc Erstellt einen einzelnen Bogen und fügt ihn der Pfadgeometrie hinzu. |
ID2D1GeometrySink::AddBezier Erstellt eine kubische Bézierkurve zwischen dem aktuellen Punkt und dem angegebenen Endpunkt. |
ID2D1GeometrySink::AddBezier Erstellt eine kubische Bézierkurve zwischen dem aktuellen Punkt und dem angegebenen Endpunkt. |
ID2D1GeometrySink::AddLine Erstellt ein Liniensegment zwischen dem aktuellen Punkt und dem angegebenen Endpunkt und fügt es der Geometriesenke hinzu. |
ID2D1GeometrySink::AddQuadraticBezier Erstellt eine kubische Bézierkurve zwischen dem aktuellen Punkt und dem angegebenen Endpunkt. |
ID2D1GeometrySink::AddQuadraticBezier Erstellt eine quadratische Bézierkurve zwischen dem aktuellen Punkt und dem angegebenen Endpunkt und fügt sie der Geometriesenke hinzu. |
ID2D1GeometrySink::AddQuadraticBeziers Fügt eine Sequenz von quadratischen Béziersegmenten als Array in einem einzelnen Aufruf hinzu. |
Hinweise
Die ID2D1GeometrySink-Schnittstelle erweitert die ID2D1SimplifiedGeometrySink-Schnittstelle , um Unterstützung für Bögen und quadratische Beziere sowie Funktionen zum Hinzufügen einzelner Linien und kubischer Bezierer hinzuzufügen.
Eine Geometriesenke besteht aus einer oder mehreren Abbildungen. Jede Abbildung besteht aus einem oder mehreren Linien-, Kurven- oder Bogensegmenten. Rufen Sie zum Erstellen einer Abbildung die BeginFigure-Methode auf, geben Sie den Startpunkt der Abbildung an, und verwenden Sie dann die Add-Methoden (z. B. AddLine und AddBezier), um Segmente hinzuzufügen. Wenn Sie das Hinzufügen von Segmenten abgeschlossen haben, rufen Sie die EndFigure-Methode auf. Sie können diese Sequenz wiederholen, um zusätzliche Abbildungen zu erstellen. Wenn Sie mit dem Erstellen von Abbildungen fertig sind, rufen Sie die Close-Methode auf.
Beispiele
Im folgenden Beispiel wird eine ID2D1PathGeometry erstellt, eine Senke abgerufen und zum Definieren einer Sanduhrform verwendet. Das vollständige Beispiel finden Sie unter Zeichnen und Ausfüllen einer komplexen Form.
ID2D1GeometrySink *pSink = NULL;
// Create a path geometry.
if (SUCCEEDED(hr))
{
hr = m_pD2DFactory->CreatePathGeometry(&m_pPathGeometry);
if (SUCCEEDED(hr))
{
// Write to the path geometry using the geometry sink.
hr = m_pPathGeometry->Open(&pSink);
if (SUCCEEDED(hr))
{
pSink->BeginFigure(
D2D1::Point2F(0, 0),
D2D1_FIGURE_BEGIN_FILLED
);
pSink->AddLine(D2D1::Point2F(200, 0));
pSink->AddBezier(
D2D1::BezierSegment(
D2D1::Point2F(150, 50),
D2D1::Point2F(150, 150),
D2D1::Point2F(200, 200))
);
pSink->AddLine(D2D1::Point2F(0, 200));
pSink->AddBezier(
D2D1::BezierSegment(
D2D1::Point2F(50, 150),
D2D1::Point2F(50, 50),
D2D1::Point2F(0, 0))
);
pSink->EndFigure(D2D1_FIGURE_END_CLOSED);
hr = pSink->Close();
}
SafeRelease(&pSink);
}
}
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | d2d1.h |