Нарисуйте кривую с разной напряженностью в C#
Пример
Этот пример аналогичен, но когда вы выбираете точки, он рисует набор кривых с различными значениями натяжения. Следующий код показывает, как программа рисует свои кривые.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
// Точки, выбранные пользователем. private List<Point> Points = new List<Point>(); 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); } } } |