Gin
Loading...
Searching...
No Matches
Functions
gin_easing.h File Reference

Collection of easing functions for animation and interpolation. More...

Functions

template<class T >
easeLinear (T p)
 Linear interpolation with no easing.
 
template<class T >
easeQuadraticIn (T p)
 Quadratic easing in - accelerating from zero velocity.
 
template<class T >
easeQuadraticOut (T p)
 Quadratic easing out - decelerating to zero velocity.
 
template<class T >
easeQuadraticInOut (T p)
 Quadratic easing in/out - acceleration until halfway, then deceleration.
 
template<class T >
easeCubicIn (T p)
 Cubic easing in - accelerating from zero velocity.
 
template<class T >
easeCubicOut (T p)
 Cubic easing out - decelerating to zero velocity.
 
template<class T >
easeCubicInOut (T p)
 Cubic easing in/out - acceleration until halfway, then deceleration.
 
template<class T >
easeQuarticIn (T p)
 Quartic easing in - accelerating from zero velocity.
 
template<class T >
easeQuarticOut (T p)
 Quartic easing out - decelerating to zero velocity.
 
template<class T >
easeQuarticInOut (T p)
 Quartic easing in/out - acceleration until halfway, then deceleration.
 
template<class T >
easeQuinticIn (T p)
 Quintic easing in - accelerating from zero velocity.
 
template<class T >
easeQuinticOut (T p)
 Quintic easing out - decelerating to zero velocity.
 
template<class T >
easeQuinticInOut (T p)
 Quintic easing in/out - acceleration until halfway, then deceleration.
 
template<class T >
easeSineIn (T p)
 Sine easing in - accelerating from zero velocity.
 
template<class T >
easeSineOut (T p)
 Sine easing out - decelerating to zero velocity.
 
template<class T >
easeSineInOut (T p)
 Sine easing in/out - acceleration until halfway, then deceleration.
 
template<class T >
easeCircularIn (T p)
 Circular easing in - accelerating from zero velocity.
 
template<class T >
easeCircularOut (T p)
 Circular easing out - decelerating to zero velocity.
 
template<class T >
easeCircularInOut (T p)
 Circular easing in/out - acceleration until halfway, then deceleration.
 
template<class T >
easeExponentialIn (T p)
 Exponential easing in - accelerating from zero velocity.
 
template<class T >
easeExponentialOut (T p)
 Exponential easing out - decelerating to zero velocity.
 
template<class T >
easeExponentialInOut (T p)
 Exponential easing in/out - acceleration until halfway, then deceleration.
 
template<class T >
easeElasticIn (T p)
 Elastic easing in - accelerating with oscillation.
 
template<class T >
easeElasticOut (T p)
 Elastic easing out - decelerating with oscillation.
 
template<class T >
easeElasticInOut (T p)
 Elastic easing in/out - acceleration and deceleration with oscillation.
 
template<class T >
easeBackIn (T p)
 Back easing in - accelerating with slight overshoot.
 
template<class T >
easeBackOut (T p)
 Back easing out - decelerating with overshoot.
 
template<class T >
easeBackInOut (T p)
 Back easing in/out - acceleration and deceleration with overshoot.
 
template<class T >
easeBounceOut (T p)
 Bounce easing out - decelerating with bounce effect.
 
template<class T >
easeBounceIn (T p)
 Bounce easing in - accelerating with bounce effect.
 
template<class T >
easeBounceInOut (T p)
 Bounce easing in/out - bouncing at both ends.
 

Detailed Description

Collection of easing functions for animation and interpolation.

Easing functions provide smooth transitions between values, commonly used in animations, UI transitions, and parameter smoothing. All functions take a normalized input value [0, 1] and return a normalized output [0, 1].

Function naming convention:

Available easing types:

Example:

float t = 0.5f; // Halfway through animation
float eased = easeCubicInOut (t); // Smooth acceleration/deceleration
float value = startValue + eased * (endValue - startValue);
A lightweight 2D point class for projects that don't use juce_graphics.
Definition gin_point.h:25
T easeCubicInOut(T p)
Cubic easing in/out - acceleration until halfway, then deceleration.
Definition gin_easing.h:145

Based on AHEasing by Auerhaus Development, LLC

See also
http://easings.net for visual demonstrations