Поделиться через


Практическое руководство. Рисование отдельного сплайна Безье

Сплайн Безье определяется четырьмя точками: начальной точкой, двумя контрольными и конечной.

Пример

В следующем примере рисуется сплайн Безье с начальной точкой (10, 100) и конечной точкой (200, 100). Контрольными будут точки (100, 10) и (150, 150).

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

Иллюстрация Spline Bezier.

Point p1 = new Point(10, 100);   // Start point
Point c1 = new Point(100, 10);   // First control point
Point c2 = new Point(150, 150);  // Second control point
Point p2 = new Point(200, 100);  // Endpoint

Pen pen = new Pen(Color.FromArgb(255, 0, 0, 255));
e.Graphics.DrawBezier(pen, p1, c1, c2, p2);
Dim p1 As New Point(10, 100) ' Start point
Dim c1 As New Point(100, 10) ' First control point
Dim c2 As New Point(150, 150) ' Second control point
Dim p2 As New Point(200, 100) ' Endpoint

Dim pen As New Pen(Color.FromArgb(255, 0, 0, 255))
e.Graphics.DrawBezier(pen, p1, c1, c2, p2)

Компиляция кода

Приведенный выше пример предназначен для использования с Windows Forms и требуется PaintEventArgs e, что является параметром обработчика Paint событий.

См. также