Crate easings[][src]

Expand description

There are a few ports of Robert Penner’s easing functions in crates.io. This one is different in that all functions take a t ∈ [0, 1] and return a value in the interval [0, 1].

Derived from https://github.com/warrenm/AHEasing/blob/master/AHEasing/easing.c

Functions

Modeled after the overshooting cubic y = x^3-xsin(xpi)

Modeled after the piecewise overshooting cubic function:

Modeled after overshooting cubic y = 1-((1-x)^3-(1-x)*sin((1-x)*pi))

Each bounce is modelled as a parabola

Each bounce is modelled as a parabola

Each bounce is modelled as a parabola

Modeled after shifted quadrant IV of unit circle

Modeled after the piecewise circular function

Modeled after shifted quadrant II of unit circle

Modeled after the cubic y = x^3

Modeled after the piecewise cubic

Modeled after the cubic y = (x - 1)^3 + 1

Modeled after the damped sine wave y = sin(13pi/2*x)*pow(2, 10 * (x - 1))

Modeled after the piecewise exponentially-damped sine wave:

Modeled after the damped sine wave y = sin(-13pi/2*(x + 1))*pow(2, -10x) + 1

Modeled after the exponential function y = 2^(10(x - 1))

Modeled after the piecewise exponential

Modeled after the exponential function y = -2^(-10x) + 1

Modeled after the line y = x

Modeled after the parabola y = x^2

Modeled after the piecewise quadratic

Modeled after the parabola y = -x^2 + 2x

Modeled after the quartic y = x^4

Modeled after the piecewise quartic

Modeled after the quartic y = 1 - (x - 1)^4

Modeled after the quintic y = x^5

Modeled after the piecewise quintic

Modeled after the quintic y = (x - 1)^5 + 1

Modeled after quarter-cycle of sine wave

Modeled after half sine wave

Modeled after quarter-cycle of sine wave (different phase)