<!--
{
  "documentType" : "article",
  "framework" : "QuartzCore",
  "identifier" : "/documentation/QuartzCore/value-calculation-modes",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Value calculation modes"
}
-->

# Value calculation modes

These constants are used by the [`calculationMode`](/documentation/QuartzCore/CAKeyframeAnimation/calculationMode) property.

## Topics

### Constants

[`linear`](/documentation/QuartzCore/CAAnimationCalculationMode/linear)

Simple linear calculation between keyframe values.

[`discrete`](/documentation/QuartzCore/CAAnimationCalculationMode/discrete)

Each keyframe value is used in turn, no interpolated values are calculated.

[`paced`](/documentation/QuartzCore/CAAnimationCalculationMode/paced)

Linear keyframe values are interpolated to produce an even pace throughout the animation.

[`cubic`](/documentation/QuartzCore/CAAnimationCalculationMode/cubic)

Smooth spline calculation between keyframe values.

[`cubicPaced`](/documentation/QuartzCore/CAAnimationCalculationMode/cubicPaced)

Cubic keyframe values are interpolated to produce an even pace throughout the animation.



---

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)