Cara: Menggambar Spline Kardinal
Spline kardinal adalah kurva yang melewati dengan lancar melalui set titik tertentu. Untuk menggambar spline kardinal, buat Graphics objek dan teruskan alamat array titik ke DrawCurve metode .
Menggambar Spline Kardinal Berbentuk Lonceng
Contoh berikut menggambar spline kardinal berbentuk bel yang melewati lima titik yang ditunjuk. Ilustrasi berikut menunjukkan kurva dan lima poin.
Point[] points = {
new Point(0, 100),
new Point(50, 80),
new Point(100, 20),
new Point(150, 80),
new Point(200, 100)};
Pen pen = new Pen(Color.FromArgb(255, 0, 0, 255));
e.Graphics.DrawCurve(pen, points);
Dim points As Point() = { _
New Point(0, 100), _
New Point(50, 80), _
New Point(100, 20), _
New Point(150, 80), _
New Point(200, 100)}
Dim pen As New Pen(Color.FromArgb(255, 0, 0, 255))
e.Graphics.DrawCurve(pen, points)
Menggambar Spline Kardinal Tertutup
- DrawClosedCurve Gunakan metode Graphics kelas untuk menggambar spline kardinal tertutup. Dalam spline kardinal tertutup, kurva berlanjut melalui titik terakhir dalam array dan terhubung dengan titik pertama dalam array. Contoh berikut menarik spline kardinal tertutup yang melewati enam poin yang ditunjuk. Ilustrasi berikut menunjukkan spline tertutup bersama dengan enam poin:
Point[] points = {
new Point(60, 60),
new Point(150, 80),
new Point(200, 40),
new Point(180, 120),
new Point(120, 100),
new Point(80, 160)};
Pen pen = new Pen(Color.FromArgb(255, 0, 0, 255));
e.Graphics.DrawClosedCurve(pen, points);
Dim points As Point() = { _
New Point(60, 60), _
New Point(150, 80), _
New Point(200, 40), _
New Point(180, 120), _
New Point(120, 100), _
New Point(80, 160)}
Dim pen As New Pen(Color.FromArgb(255, 0, 0, 255))
e.Graphics.DrawClosedCurve(pen, points)
Mengubah Bungkuk Spline Kardinal
- Ubah cara garis spline kardinal membungkuk dengan meneruskan argumen ketegangan ke DrawCurve metode . Contoh berikut menggambar tiga spline kardinal yang melewati set titik yang sama. Ilustrasi berikut menunjukkan tiga spline bersama dengan nilai ketegangannya. Perhatikan bahwa ketika ketegangan adalah 0, titik dihubungkan oleh garis lurus.
Point[] points = {
new Point(20, 50),
new Point(100, 10),
new Point(200, 100),
new Point(300, 50),
new Point(400, 80)};
Pen pen = new Pen(Color.FromArgb(255, 0, 0, 255));
e.Graphics.DrawCurve(pen, points, 0.0f);
e.Graphics.DrawCurve(pen, points, 0.6f);
e.Graphics.DrawCurve(pen, points, 1.0f);
Dim points As Point() = { _
New Point(20, 50), _
New Point(100, 10), _
New Point(200, 100), _
New Point(300, 50), _
New Point(400, 80)}
Dim pen As New Pen(Color.FromArgb(255, 0, 0, 255))
e.Graphics.DrawCurve(pen, points, 0.0F)
e.Graphics.DrawCurve(pen, points, 0.6F)
e.Graphics.DrawCurve(pen, points, 1.0F)
Mengompilasi Kode
Contoh sebelumnya dirancang untuk digunakan dengan Formulir Windows, dan memerlukan PaintEventArgs e
, yang merupakan parameter penanganan Paint aktivitas.
Lihat juga
Berkolaborasi dengan kami di GitHub
Sumber untuk konten ini dapat ditemukan di GitHub, yang juga dapat Anda gunakan untuk membuat dan meninjau masalah dan menarik permintaan. Untuk informasi selengkapnya, lihat panduan kontributor kami.
.NET Desktop feedback