<!--
{
  "availability" : [
    "iOS: 13.0.0 -",
    "iPadOS: 13.0.0 -",
    "macCatalyst: 13.0.0 -",
    "macOS: 10.15.0 -",
    "tvOS: 13.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 6.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SwiftUI",
  "identifier" : "/documentation/SwiftUI/Path/addArc(center:radius:startAngle:endAngle:clockwise:transform:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "SwiftUI"
    ],
    "preciseIdentifier" : "s:7SwiftUI4PathV6addArc6center6radius10startAngle03endI09clockwise9transformySo7CGPointV_14CoreFoundation7CGFloatVAA0I0VAQSbSo17CGAffineTransformVtF"
  },
  "title" : "addArc(center:radius:startAngle:endAngle:clockwise:transform:)"
}
-->

# addArc(center:radius:startAngle:endAngle:clockwise:transform:)

Adds an arc of a circle to the path, specified with a radius
and angles.

```
mutating func addArc(center: CGPoint, radius: CGFloat, startAngle: Angle, endAngle: Angle, clockwise: Bool, transform: CGAffineTransform = .identity)
```

## Parameters

`center`

The center of the arc, in user space coordinates.

`radius`

The radius of the arc, in user space coordinates.

`startAngle`

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

`endAngle`

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

`clockwise`

true to make a clockwise arc; false to make a
counterclockwise arc.

`transform`

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

## 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
path.

The `clockwise` parameter determines the direction in which the
arc is created; the actual direction of the final path is
dependent on the `transform` parameter and the current
transform of a context where the path is drawn. However,
because SwiftUI by default uses a vertically-flipped coordinate
system (with the origin in the top-left of the view),
specifying a clockwise arc results in a counterclockwise arc
after the transformation is applied.

If the path ends with an unclosed subpath, this method adds a
line connecting the current point to the starting point of the
arc. If there is no unclosed subpath, this 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.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)