Export (0) Print
Expand All

Graphics.DrawBezier Method (Pen, Single, Single, Single, Single, Single, Single, Single, Single)

Draws a Bézier spline defined by four ordered pairs of coordinates that represent points.

Namespace:  System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

public void DrawBezier(
	Pen pen,
	float x1,
	float y1,
	float x2,
	float y2,
	float x3,
	float y3,
	float x4,
	float y4
)

Parameters

pen
Type: System.Drawing.Pen

Pen that determines the color, width, and style of the curve.

x1
Type: System.Single

The x-coordinate of the starting point of the curve.

y1
Type: System.Single

The y-coordinate of the starting point of the curve.

x2
Type: System.Single

The x-coordinate of the first control point of the curve.

y2
Type: System.Single

The y-coordinate of the first control point of the curve.

x3
Type: System.Single

The x-coordinate of the second control point of the curve.

y3
Type: System.Single

The y-coordinate of the second control point of the curve.

x4
Type: System.Single

The x-coordinate of the ending point of the curve.

y4
Type: System.Single

The y-coordinate of the ending point of the curve.

ExceptionCondition
ArgumentNullException

pen is null.

The Bézier spline is drawn from the first point to the fourth point. The second and third points are control points that determine the shape of the curve.

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

  • Creates a black pen.

  • Creates the coordinates of the start, end, and two control points for the curve.

  • Draws the Bézier curve to the screen.

private void DrawBezierFloat(PaintEventArgs e)
{
    // Create pen.
    Pen blackPen = new Pen(Color.Black, 3);

    // Create coordinates of points for curve. 
    float startX = 100.0F;
    float startY = 100.0F;
    float controlX1 = 200.0F;
    float controlY1 =  10.0F;
    float controlX2 = 350.0F;
    float controlY2 =  50.0F;
    float endX = 500.0F;
    float endY = 100.0F;

    // Draw arc to screen.
    e.Graphics.DrawBezier(blackPen, startX, startY,
        controlX1, controlY1,
        controlX2, controlY2,
        endX, endY);
}

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft