Нарисуйте кривую с разной напряженностью в C#
Пример показывает, как использовать метод draw Graphics класса DrawCurve для рисования гладкой кривой, соединяющей последовательность точек. Параметр натяжения метода позволяет вам изменить, как непосредственно кривая посещает каждую точку.
Этот пример аналогичен, но когда вы выбираете точки, он рисует набор кривых с различными значениями натяжения. Следующий код показывает, как программа рисует свои кривые.
// Точки, выбранные пользователем. private ListPoints = new List (); private void Form1_Paint(object sender, PaintEventArgs e) { e.Graphics.SmoothingMode = SmoothingMode.AntiAlias; // Нарисуем точки. foreach (Point point in Points) e.Graphics.FillEllipse(Brushes.Black, point.X - 3, point.Y - 3, 5, 5); if (Points.Count < 2) return; // Рисуем кривую. using (Pen pen = new Pen(Color.Red)) { for (int t = 0; t <= 20; t += 2) { pen.Color = Color.FromArgb( 255 * t / 20, 0, 255 - 255 * t / 20); e.Graphics.DrawCurve(pen, Points.ToArray(), t / 10f); } } }
