Bagikan melalui


Metode GraphicsPathIterator::NextMarker(constGraphicsPath*) (gdipluspath.h)

Metode GraphicsPathIterator::NextMarker mendapatkan bagian berbatas penanda berikutnya dari jalur terkait iterator ini.

Sintaks

INT NextMarker(
  [out] const GraphicsPath *path
);

Parameter

[out] path

Jenis: GraphicsPath*

Penunjuk ke objek GraphicsPath . Metode ini mengatur titik data objek GraphicsPath ini agar sesuai dengan titik data dari bagian yang diambil.

Menampilkan nilai

Jenis: INT

Metode ini mengembalikan jumlah titik data di bagian yang diambil. Jika tidak ada lagi bagian yang dibatasi penanda untuk diambil, metode ini mengembalikan 0.

Keterangan

Jalur memiliki array titik data yang menentukan garis dan kurvanya. Anda dapat memanggil metode SetMarker jalur untuk menunjuk titik tertentu dalam array sebagai penanda. Titik penanda tersebut membagi jalur menjadi beberapa bagian.

Pertama kali Anda memanggil metode GraphicsPathIterator::NextMarker dari iterator, metode ini mendapatkan bagian pertama yang dibatasi penanda dari jalur terkait iterator tersebut. Kedua kalinya, ia mendapatkan bagian kedua, dan sebagainya. Setiap kali Anda memanggil GraphicsPathIterator::NextSubpath, itu mengembalikan jumlah titik data di bagian yang diambil. Ketika tidak ada bagian yang tersisa, bagian tersebut mengembalikan 0.

Contoh

Contoh berikut membuat objek GraphicsPath dan menambahkan lima gambar ke jalur. Panggilan ke metode SetMarker menempatkan dua penanda di jalur. Penanda pertama berada di akhir gambar, dan penanda kedua berada di tengah-tengah gambar. Kode meneruskan alamat objek GraphicsPath ke konstruktor GraphicsPathIterator untuk membuat iterator yang terkait dengan jalur. Kemudian kode memanggil metode GraphicsPathIterator::NextMarker iterator dua kali untuk mendapatkan bagian jalur yang dibatasi penanda kedua. Akhirnya, kode menggambar bagian jalur yang diambil.


VOID NextMarkerExample(HDC hdc)
{
   Graphics graphics(hdc);

   // Create a graphics path with five figures (subpaths).
   GraphicsPath path;

   path.AddRectangle(Rect(20, 20, 60, 30));
   path.SetMarker();                          // first marker

   path.AddLine(100, 20, 160, 50);
   path.AddArc(180, 20, 60, 30, 0.0f, 180.0f);

   path.AddRectangle(Rect(260, 20, 60, 30));

   path.AddLine(340, 20, 400, 50);
   path.SetMarker();                          // second marker
   path.AddArc(340, 20, 60, 30, 0.0f, 180.0f);
   path.CloseFigure();
  
   path.AddRectangle(Rect(420, 20, 60, 30));
 
   // Create an iterator, and associate it with the path.
   GraphicsPathIterator iterator(&path);

   // Get the second marker-delimited section by calling NextMarker twice.
   GraphicsPath section;
   INT count;
   count = iterator.NextMarker(&section);
   count = iterator.NextMarker(&section);

   // The variable "count" now holds the number of 
   // data points in the second marker-delimited section.

   // Draw the retrieved section.
   Pen bluePen(Color(255, 0, 0, 255));
   graphics.DrawPath(&bluePen, &section);
}

Persyaratan

   
Klien minimum yang didukung Windows XP, Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header gdipluspath.h (termasuk Gdiplus.h)
Pustaka Gdiplus.lib
DLL Gdiplus.dll

Lihat juga

Membuat dan Menggambar Jalur

GetPathData

GraphicsPath

GraphicsPathIterator

GraphicsPathIterator::NextSubpath Methods

Penanda Berikutnya

Jalan