<!--
{
  "availability" : [
    "iOS: 3.2.0 -",
    "iPadOS: 3.2.0 -",
    "macCatalyst: 13.1.0 -",
    "tvOS: -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIBezierPath/addQuadCurve(to:controlPoint:)",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Method",
  "symbol" : {
    "kind" : "Instance Method",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(cs)UIBezierPath(im)addQuadCurveToPoint:controlPoint:"
  },
  "title" : "addQuadCurve(to:controlPoint:)"
}
-->

# addQuadCurve(to:controlPoint:)

Appends a quadratic Bézier curve to the path.

```
func addQuadCurve(to endPoint: CGPoint, controlPoint: CGPoint)
```

## Parameters

`endPoint`

The end point of the curve.

`controlPoint`

The control point of the curve.

## Discussion

This method appends a quadratic Bézier curve from the current point to the end point specified by the `endPoint` parameter. The relationships between the current point, control point, and end point are what defines the actual curve. The following image shows some examples of quadratic curves and the approximate curve shape based on some sample points. The exact curvature of the segment involves a complex mathematical relationship between the points and is well documented online.

![](images/com.apple.uikit/media-1965858.jpg)

You must set the path’s current point (using the [`move(to:)`](/documentation/UIKit/UIBezierPath/move(to:)) method or through the previous creation of a line or curve segment) before you call this method. If the path is empty, this method does nothing. After adding the curve segment, this method updates the current point to the value in `point`.

---

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)