Grafis::D rawCurve(constPen*,constPoint*,INT,INT,INT,REAL) metode (gdiplusgraphics.h)
Metode Graphics::D rawCurve menggambar spline kardinal.
Sintaks
Status DrawCurve(
[in] const Pen *pen,
[in] const Point *points,
[in] INT count,
[in] INT offset,
[in] INT numberOfSegments,
[in] REAL tension
);
Parameter
[in] pen
Jenis: const Pen*
Penunjuk ke pena yang digunakan untuk menggambar spline kardinal.
[in] points
Jenis: const Point*
Penunjuk ke array objek Titik yang menentukan koordinat yang dilewati oleh spline kardinal.
[in] count
Jenis: INT
Bilangan bulat yang menentukan jumlah elemen dalam array titik .
[in] offset
Jenis: INT
Bilangan bulat yang menentukan elemen dalam array titik yang menentukan titik di mana spline kardinal dimulai.
[in] numberOfSegments
Jenis: INT
Bilangan bulat yang menentukan jumlah segmen dalam spline kardinal.
[in] tension
Jenis: NYATA
Angka riil yang menentukan seberapa erat kurva membungkuk melalui koordinat spline kardinal.
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 .
Keterangan
Segmen didefinisikan sebagai kurva yang menghubungkan dua titik berturut-turut di spline kardinal. Titik akhir dari setiap segmen adalah titik awal untuk yang berikutnya. Parameter numberOfSegments tidak boleh lebih besar dari parameter hitungan dikurangi parameter offset ditambah satu.
Contoh
Contoh berikut menggambar spline kardinal.
VOID Example_DrawCurve2(HDC hdc)
{
Graphics graphics(hdc);
// Define a Pen object and an array of Point objects.
Pen greenPen(Color::Green, 3);
Point point1(100, 100);
Point point2(200, 50);
Point point3(400, 10);
Point point4(500, 100);
Point curvePoints[4] = {
point1,
point2,
point3,
point4};
Point* pcurvePoints = curvePoints;
// Specify offset, number of segments to draw, and tension.
int offset = 1;
int segments = 2;
REAL tension = 1.0;
// Draw the curve.
graphics.DrawCurve(&greenPen, curvePoints, 4, offset, segments, tension);
//Draw the points in the curve.
SolidBrush redBrush(Color::Red);
graphics.FillEllipse(&redBrush, Rect(95, 95, 10, 10));
graphics.FillEllipse(&redBrush, Rect(195, 45, 10, 10));
graphics.FillEllipse(&redBrush, Rect(395, 5, 10, 10));
graphics.FillEllipse(&redBrush, Rect(495, 95, 10, 10));
}
Persyaratan
Persyaratan | Nilai |
---|---|
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 | gdiplusgraphics.h (termasuk Gdiplus.h) |
Pustaka | Gdiplus.lib |
DLL | Gdiplus.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk