Antarmuka ID2D1PathGeometry (d2d1.h)

Mewakili bentuk kompleks yang mungkin terdiri dari busur, kurva, dan garis.

Warisan

Antarmuka ID2D1PathGeometry mewarisi dari ID2D1Geometry. ID2D1PathGeometry juga memiliki jenis anggota berikut:

Metode

Antarmuka ID2D1PathGeometry memiliki metode ini.

 
ID2D1PathGeometry::GetFigureCount

Mengambil jumlah angka dalam geometri jalur.
ID2D1PathGeometry::GetSegmentCount

Mengambil jumlah segmen dalam geometri jalur.
ID2D1PathGeometry::Open

Mengambil sink geometri yang digunakan untuk mengisi geometri jalur dengan angka dan segmen.
ID2D1PathGeometry::Stream

Menyalin konten geometri jalur ke ID2D1GeometrySink yang ditentukan.

Keterangan

Objek ID2D1PathGeometry memungkinkan Anda menjelaskan jalur geometris. Untuk menjelaskan jalur objek ID2D1PathGeometry , gunakan metode Buka objek untuk mengambil ID2D1GeometrySink. Gunakan sink untuk mengisi geometri jalur dengan angka dan segmen.

Membuat Objek ID2D1PathGeometry

Untuk membuat geometri jalur, gunakan metode ID2D1Factory::CreatePathGeometry .

Objek ID2D1PathGeometry adalah sumber daya independen perangkat yang dibuat oleh ID2D1Factory. Secara umum, Anda harus membuat geometri sekali dan mempertahankannya selama masa pakai aplikasi, atau sampai perlu dimodifikasi. Untuk informasi selengkapnya tentang sumber daya yang independen perangkat dan bergantung pada perangkat, lihat Gambaran Umum Sumber Daya.

Contoh

Contoh berikut membuat ID2D1PathGeometry, mengambil sink, dan menggunakannya untuk menentukan bentuk hourglass. Untuk contoh lengkapnya, lihat Cara Menggambar dan Mengisi Bentuk Kompleks.

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

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7, Windows Vista dengan SP2 dan Pembaruan Platform untuk Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2, Windows Server 2008 dengan SP2 dan Pembaruan Platform untuk Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header d2d1.h

Lihat juga

Topik Cara Geometri

Gambaran Umum Geometri

ID2D1Factory::CreatePathGeometry

ID2D1Geometry

Gambaran Umum Geometri Jalur