Export (0) Print
Expand All

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

Draws an arc representing a portion of an ellipse specified by a pair of coordinates, a width, and a height.

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

public void DrawArc(
	Pen pen,
	float x,
	float y,
	float width,
	float height,
	float startAngle,
	float sweepAngle
)

Parameters

pen
Type: System.Drawing.Pen

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

x
Type: System.Single

The x-coordinate of the upper-left corner of the rectangle that defines the ellipse.

y
Type: System.Single

The y-coordinate of the upper-left corner of the rectangle that defines the ellipse.

width
Type: System.Single

Width of the rectangle that defines the ellipse.

height
Type: System.Single

Height of the rectangle that defines the ellipse.

startAngle
Type: System.Single

Angle in degrees measured clockwise from the x-axis to the starting point of the arc.

sweepAngle
Type: System.Single

Angle in degrees measured clockwise from the startAngle parameter to ending point of the arc.

ExceptionCondition
ArgumentNullException

pen is null.

This method draws an arc that is a portion of the perimeter of an ellipse. The ellipse is defined by the boundaries of a rectangle. The arc is the portion of the perimeter of the ellipse between the startAngle parameter and the startAngle + sweepAngle parameters.

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 position and size of a rectangle to bound an ellipse.

  • Defines the start (45 degrees) and sweep (270 degrees) angles.

  • Draws the elliptical arc to the screen.

The result is a partial ellipse missing a segment between + and - 45 degrees of the x axis.

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

    // Create coordinates of rectangle to bound ellipse. 
    float x = 0.0F;
    float y = 0.0F;
    float width = 100.0F;
    float height = 200.0F;

    // Create start and sweep angles on ellipse. 
    float startAngle =  45.0F;
    float sweepAngle = 270.0F;

    // Draw arc to screen.
    e.Graphics.DrawArc(blackPen, x, y, width, height, startAngle, sweepAngle);
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Show:
© 2015 Microsoft