---
title: animationCurve
framework: appkit
role: symbol
role_heading: Instance Property
path: appkit/nsanimation/animationcurve
---

# animationCurve

The timing curve for the animation.

## Declaration

```swift
var animationCurve: NSAnimation.Curve { get set }
```

## Discussion

Discussion The animation curve describes the relative frame rate over the course of the animation; predefined curves are linear, ease in (slow down near end), ease out (slowly speed up at start), and ease in-ease out (S-curve). Changing the value of this property changes the timing of an in-progress animation. The value of this property is ignored if the delegate implements the animation(_:valueForProgress:) method. Setting this property to an invalid value raises an exception. For a list of valid animation values, see NSAnimation.Curve.

## See Also

### Configuring an Animation

- [animationBlockingMode](appkit/nsanimation/animationblockingmode.md)
- [runLoopModesForAnimating](appkit/nsanimation/runloopmodesforanimating.md)
- [duration](appkit/nsanimation/duration.md)
- [frameRate](appkit/nsanimation/framerate.md)
