---
title: UnitCurve
framework: swiftui
role: symbol
role_heading: Structure
path: swiftui/unitcurve
---

# UnitCurve

A  function defined by a two-dimensional curve that maps an input progress in the range [0,1] to an output progress that is also in the range [0,1]. By changing the shape of the curve, the effective speed of an animation or other interpolation can be changed.

## Declaration

```swift
struct UnitCurve
```

## Overview

Overview The horizontal (x) axis defines the input progress: a single input progress value in the range [0,1] must be provided when evaluating a curve. The vertical (y) axis maps to the output progress: when a curve is evaluated, the y component of the point that intersects the input progress is returned.

## Topics

### Getting a linear curve

- [linear](swiftui/unitcurve/linear.md)

### Getting easing curves

- [easeIn](swiftui/unitcurve/easein.md)
- [easeOut](swiftui/unitcurve/easeout.md)
- [easeInOut](swiftui/unitcurve/easeinout.md)
- [circularEaseIn](swiftui/unitcurve/circulareasein.md)
- [circularEaseOut](swiftui/unitcurve/circulareaseout.md)
- [circularEaseInOut](swiftui/unitcurve/circulareaseinout.md)

### Creating a general Bezier curve

- [bezier(startControlPoint:endControlPoint:)](swiftui/unitcurve/bezier(startcontrolpoint:endcontrolpoint:).md)

### Inverting a curve

- [inverse](swiftui/unitcurve/inverse.md)

### Getting curve characteristics

- [value(at:)](swiftui/unitcurve/value(at:).md)
- [velocity(at:)](swiftui/unitcurve/velocity(at:).md)

### Deprecated symbols

- [easeInEaseOut](swiftui/unitcurve/easeineaseout.md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Escapable](swift/escapable.md)
- [Hashable](swift/hashable.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Creating custom animations

- [CustomAnimation](swiftui/customanimation.md)
- [AnimationContext](swiftui/animationcontext.md)
- [AnimationState](swiftui/animationstate.md)
- [AnimationStateKey](swiftui/animationstatekey.md)
- [Spring](swiftui/spring.md)
