ID2D1GeometrySink 介面 (d2d1.h)

描述可包含線條、弧線、三次方 Bezier 曲線和二次方 Bezier 曲線的幾何路徑。

繼承

ID2D1GeometrySink介面繼承自ID2D1SimplifiedGeometrySinkID2D1GeometrySink 也有下列類型的成員:

方法

ID2D1GeometrySink介面具有這些方法。

 
ID2D1GeometrySink::AddArc

將單一弧線加入至路徑幾何。
ID2D1GeometrySink::AddArc

建立單一弧線,並將它新增至路徑幾何。
ID2D1GeometrySink::AddBezier

在目前的點和指定的結束點之間建立三次方貝茲曲線。
ID2D1GeometrySink::AddBezier

建立目前點與指定端點之間的三次方 Bezier 曲線。
ID2D1GeometrySink::AddLine

建立目前點與指定端點之間的線條線段,並將它新增至幾何接收。
ID2D1GeometrySink::AddQuadraticBezier

在目前的點和指定的結束點之間建立二次方貝茲曲線。
ID2D1GeometrySink::AddQuadraticBezier

建立目前點與指定端點之間的二次方 Bezier 曲線,並將它新增至幾何接收。
ID2D1GeometrySink::AddQuadraticBeziers

在單一呼叫中,將二次方 Bezier 區段的序列新增為數組。

備註

ID2D1GeometrySink介面會擴充ID2D1SimplifiedGeometrySink介面,以新增弧形和二次方子子的支援,以及新增單行和三次方子子的函式。

幾何接收是由一或多個圖形所組成。 每個圖表是由一或多個線條、曲線或弧線段所組成。 若要建立圖表,請呼叫 BeginFigure 方法、指定圖形的起點,然後使用其 Add 方法 (,例如 AddLine 和 AddBezier) 來新增區段。 當您完成新增區段時,請呼叫 EndFigure 方法。 您可以重複此順序來建立其他圖表。 當您完成建立圖形時,請呼叫 Close 方法。

範例

下列範例會建立 ID2D1PathGeometry、擷取接收,並使用它來定義沙漏形狀。 如需完整的範例,請參閱 如何繪製和填滿複雜圖形

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);
    }
}

規格需求

   
最低支援的用戶端 適用于 Windows Vista 的 Windows 7、Windows Vista SP2 和平臺更新 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2、Windows Server 2008 SP2 和 Platform Update for Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 d2d1.h

另請參閱

幾何概觀

如何繪製和填滿複雜圖形

ID2D1SimplifiedGeometrySink