Export (0) Print
Expand All

GraphicsPath.AddCurve Method (Point(), Int32, Int32, Single)

Adds a spline curve to the current figure.

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

Public Sub AddCurve ( _
	points As Point(), _
	offset As Integer, _
	numberOfSegments As Integer, _
	tension As Single _


Type: System.Drawing.Point()

An array of Point structures that represents the points that define the curve.

Type: System.Int32

The index of the element in the points array that is used as the first point in the curve.

Type: System.Int32

A value that specifies the amount that the curve bends between control points. Values greater than 1 produce unpredictable results.

Type: System.Single

A value that specifies the amount that the curve bends between control points. Values greater than 1 produce unpredictable results.

The user must keep the original points if they are needed. The original points are converted to cubic Bézier control points internally, therefore there is no mechanism for returning the original points.

The curve begins at the point in the array specified by the offset parameter and includes the number of points (segments) specified by numberOfSegments.

The following code example is designed for use with Windows Forms, and it requires PaintEventArgs e, an OnPaint event object. The code performs the following actions:

  • Creates an array of four points (representing a cardinal spline).

  • Creates a path and using the array of points, adds the curve to the path.

  • Draws the path to the screen.

Notice that while the array holds four points, there are only three segments, which is the number specified in the third argument of the call to AddCurve.

Public Sub AddCurveExample(ByVal e As PaintEventArgs)

    ' Create some points. 
    Dim point1 As New Point(20, 20)
    Dim point2 As New Point(40, 0)
    Dim point3 As New Point(60, 40)
    Dim point4 As New Point(80, 20)

    ' Create an array of the points. 
    Dim curvePoints As Point() = {point1, point2, point3, point4}

    ' Create a GraphicsPath object and add a curve. 
    Dim myPath As New GraphicsPath
    myPath.AddCurve(curvePoints, 0, 3, 0.8F)

    ' Draw the path to the screen. 
    Dim myPen As New Pen(Color.Black, 2)
    e.Graphics.DrawPath(myPen, myPath)
End Sub

.NET Framework

Supported in: 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.

© 2014 Microsoft