Instance Method

Adds a sequence of connected straight-line segments to the path.

## Parameters

`points`

An array of values that specify the start and end points of the line segments to draw. Each point in the array specifies a position in user space. The first point in the array specifies the initial starting point.

`transform`

An affine transform to apply to the points before adding to the path. Defaults to the identity transform if not specified.

## Discussion

Calling this convenience method is equivalent to calling the `move(to:transform:)` method with the first value in the `points` array, then calling the `addLine(to:transform:)` method for each subsequent point until the array is exhausted. After calling this method, the path’s current point is the last point in the array.

### Constructing a Graphics Path

`func move(to: CGPoint, transform: CGAffineTransform)`

Begins a new subpath at the specified point.

`func addLine(to: CGPoint, transform: CGAffineTransform)`

Appends a straight line segment from the current point to the specified point.

`func addRects([CGRect], transform: CGAffineTransform)`

Adds a set of rectangular subpaths to the path.

`func addEllipse(in: CGRect, transform: CGAffineTransform)`

Adds an ellipse that fits inside the specified rectangle.

`func addArc(tangent1End: CGPoint, tangent2End: CGPoint, radius: CGFloat, transform: CGAffineTransform)`

Adds an arc of a circle to the path, specified with a radius and two tangent lines.

`func addCurve(to: CGPoint, control1: CGPoint, control2: CGPoint, transform: CGAffineTransform)`

Adds a cubic Bézier curve to the path, with the specified end point and control points.

`func addQuadCurve(to: CGPoint, control: CGPoint, transform: CGAffineTransform)`

Adds a quadratic Bézier curve to the path, with the specified end point and control point.

`func closeSubpath()`

Closes and completes a subpath in a mutable graphics path.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.