Практическое руководство. Рисование последовательности сплайнов Безье
Обновлен: Ноябрь 2007
Чтобы нарисовать последовательность связанных сплайнов Безье, необходимо воспользоваться методом DrawBeziers класса Graphics.
Пример
В следующем примере рисуется кривая, состоящая из двух соединенных сплайнов Безье. Конечная точка первого сплайна Безье является начальной точкой для второго.
На следующем рисунке представлены соединенные сплайны и семь точек.
' Point(10, 100) = start point of first spline
' Point(75, 10) = first control point of first spline
' Point(80, 50) = second control point of first spline
' Point(100, 150) = endpoint of first spline and start point of second spline
' Point(125, 80) = first control point of second spline
' Point(175, 200) = second control point of second spline
' Point(200, 80)} = endpoint of second spline
Dim p As Point() = { _
New Point(10, 100), _
New Point(75, 10), _
New Point(80, 50), _
New Point(100, 150), _
New Point(125, 80), _
New Point(175, 200), _
New Point(200, 80)}
Dim pen As New Pen(Color.Blue)
e.Graphics.DrawBeziers(pen, p)
Point[] p = {
new Point(10, 100), // start point of first spline
new Point(75, 10), // first control point of first spline
new Point(80, 50), // second control point of first spline
new Point(100, 150), // endpoint of first spline and
// start point of second spline
new Point(125, 80), // first control point of second spline
new Point(175, 200), // second control point of second spline
new Point(200, 80)}; // endpoint of second spline
Pen pen = new Pen(Color.Blue);
e.Graphics.DrawBeziers(pen, p);
Компиляция кода
Предыдущий пример предназначен для работы с Windows Forms, для него необходим объект PaintEventArgs e, передаваемый в качестве параметра обработчику события Paint.