Нарисуйте кривую с разной напряженностью в C#

Пример Изменение натяжения гладкой кривой в C# показывает, как использовать метод draw Graphics класса DrawCurve для рисования гладкой кривой, соединяющей последовательность точек. Параметр натяжения метода позволяет вам изменить, как непосредственно кривая посещает каждую точку.

Этот пример аналогичен, но когда вы выбираете точки, он рисует набор кривых с различными значениями натяжения. Следующий код показывает, как программа рисует свои кривые.

// Точки, выбранные пользователем.
private List Points = 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);
        }
    }
}

Источник: http://csharphelper.com/blog/2015/04/draw-a-curve-with-varying-tensions-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector