Freigeben über


ID2D1SimplifiedGeometrySink::Close-Methode (d2d1.h)

Schließt die Geometriesenke, gibt an, ob sie sich in einem Fehlerzustand befindet, und setzt den Fehlerstatus der Senke zurück.

Syntax

HRESULT Close();

Rückgabewert

Typ: HRESULT

Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein HRESULT-Fehlercode zurückgegeben.

Hinweise

Schließen Sie die Geometriesenke nicht, während eine Abbildung noch in Bearbeitung ist. Dadurch wird die Geometriesenke in einen Fehlerzustand versetzt. Damit der Schließenvorgang erfolgreich ist, muss für jeden Aufruf von BeginFigure ein EndFigure-Aufruf vorhanden sein.

Nach dem Aufrufen dieser Methode ist die Geometriesenke möglicherweise nicht mehr verwendbar. Direct2D-Implementierungen dieser Schnittstelle lassen es nicht zu, dass die Geometriesenke nach dem Schließen geändert wird, aber andere Implementierungen erzwingen diese Einschränkung möglicherweise nicht.

Beispiele

Im folgenden Beispiel wird eine ID2D1PathGeometry erstellt, eine Senke abgerufen und zum Definieren einer Sanduhrform verwendet.

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

Anforderung Wert
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
Bibliothek D2d1.lib
DLL D2d1.dll

Weitere Informationen

ID2D1SimplifiedGeometrySink