Bagikan melalui


Grafis::D rawBeziers(constPen*,constPoint*,INT) metode (gdiplusgraphics.h)

Metode Graphics::D rawBeziers menarik urutan spline Bézier yang terhubung.

Sintaksis

Status DrawBeziers(
  [in] const Pen   *pen,
  [in] const Point *points,
  [in] INT         count
);

Parameter

[in] pen

Jenis: const Pen*

Pointer ke pena yang digunakan untuk menggambar spline Bézier.

[in] points

Jenis: const Point*

Penunjuk ke array objek Point yang menentukan titik awal, akhir, dan kontrol spline Bézier. Koordinat akhir dari satu spline Bézier adalah koordinat awal spline Bézier berikutnya.

[in] count

Jenis: INT

Bilangan bulat yang menentukan jumlah elemen dalam titik array.

Mengembalikan nilai

Jenis: Status

Jika metode berhasil, metode mengembalikan Ok, yang merupakan elemen dari enumerasi Status .

Jika metode gagal, metode mengembalikan salah satu elemen lain dari enumerasi Status.

Komentar

Spline Bézier tidak melewati titik kontrolnya. Titik kontrol bertindak sebagai magnet, menarik kurva ke arah tertentu untuk memengaruhi cara Bézier membungkuk.

Contoh

Contoh berikut menggambar sepasang kurva Bézier.


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

   // Define a Pen object and an array of Point objects.
   Pen greenPen(Color(255, 0, 255, 0), 3);

   Point startPoint(100, 100);
   Point ctrlPoint1(200, 50);
   Point ctrlPoint2(400, 10);
   Point endPoint1(500, 100);
   Point ctrlPoint3(600, 200);
   Point ctrlPoint4(700, 400);
   Point endPoint2(500, 500);

   Point curvePoints[7] = {
      startPoint,
      ctrlPoint1,
      ctrlPoint2,
      endPoint1,
      ctrlPoint3,
      ctrlPoint4,
      endPoint2};

   // Draw the Bezier curves.
   graphics.DrawBeziers(&greenPen, curvePoints, 7);

   // Draw the control and end points.
   SolidBrush redBrush(Color(255, 255, 0, 0));
   graphics.FillEllipse(&redBrush, Rect(100 - 5, 100 - 5, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(500 - 5, 100 - 5, 10, 10));
   graphics.FillEllipse(&redBrush, Rect(500 - 5, 500 - 5, 10, 10));
   SolidBrush blueBrush(Color(255, 0, 0, 255));
   graphics.FillEllipse(&blueBrush, Rect(200 - 5, 50 - 5, 10, 10));
   graphics.FillEllipse(&blueBrush, Rect(400 - 5, 10 - 5, 10, 10));
   graphics.FillEllipse(&blueBrush, Rect(600 - 5, 200 - 5, 10, 10));
   graphics.FillEllipse(&blueBrush, Rect(700 - 5, 400 - 5, 10, 10));
}

Persyaratan

Syarat Nilai
klien minimum yang didukung Windows XP, Windows 2000 Professional [hanya aplikasi desktop]
server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Platform Target Windows
Header gdiplusgraphics.h (termasuk Gdiplus.h)
Pustaka Gdiplus.lib
DLL Gdiplus.dll

Lihat juga

Bézier Splines

Metode DrawBezier

DrawBeziers

Gambar Bézier Splines

Grafis

Pena

Point