Contents

CGContextAddArc

Adds an arc of a circle to the current path, possibly preceded by a straight line segment

Declaration

extern void CGContextAddArc(CGContextRef c, CGFloat x, CGFloat y, CGFloat radius, CGFloat startAngle, CGFloat endAngle, int clockwise);

Parameters

  • c:

    A graphics context.

  • x:

    The x-value, in user space coordinates, for the center of the arc.

  • y:

    The y-value, in user space coordinates, for the center of the arc.

  • radius:

    The radius of the arc, in user space coordinates.

  • startAngle:

    The angle to the starting point of the arc, measured in radians from the positive x-axis.

  • endAngle:

    The angle to the end point of the arc, measured in radians from the positive x-axis.

  • clockwise:

    Specify 1 to create a clockwise arc or 0 to create a counterclockwise arc.

Discussion

This method calculates starting and ending points using the radius and angles you specify, uses a sequence of cubic Bézier curves to approximate a segment of a circle between those points, and then appends those curves to the current path.

The clockwise parameter determines the direction in which the arc is created; the actual direction of the final path is dependent on the current transformation matrix of the graphics context. In a flipped coordinate system (the default for UIView drawing methods in iOS), specifying a clockwise arc results in a counterclockwise arc after the transformation is applied.

If the current path already contains a subpath, this method adds a line connecting the current point to the starting point of the arc. If the current path is empty, his method creates a new subpath whose starting point is the starting point of the arc. The ending point of the arc becomes the new current point of the path.

See Also

Constructing a Current Graphics Path