How to: Draw a Sequence of Bézier Splines

You can use the DrawBeziers method of the Graphics class to draw a sequence of connected Bézier splines.

Example

The following example draws a curve that consists of two connected Bézier splines. The endpoint of the first Bézier spline is the start point of the second Bézier spline.

The following illustration shows the connected splines along with the seven points.

Bezier Spline

' 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);

Compiling the Code

The preceding example is designed for use with Windows Forms, and it requires PaintEventArgs e, which is a parameter of the Paint event handler.

See Also

Concepts

Bézier Splines in GDI+

Other Resources

Graphics and Drawing in Windows Forms

Constructing and Drawing Curves