Updated NeoPixelAnimator object (markdown)

Michael Miller
2018-12-10 12:39:16 -08:00
parent 70505c7313
commit c0ee44f699

@@ -67,41 +67,35 @@ void loop()
```
## Easing equations
Most easing equations are grouped by three basic types.
* Ease In - Calculates a progress that is accelerating from a complete stop with no velocity.
* Ease Out - Calculates a progress that is decelerating toward a complete stop.
* Ease In/Out - Calculates a progress that is accelerating from a complete stop until the halfway point at which time it then decelerates toward a complete stop at the end.
Most easing equations are grouped by four basic types.
* Ease In - Calculates a progress that is smoothly accelerating from a complete stop with no velocity.
* Ease Out - Calculates a progress that is smoothly decelerating toward a complete stop.
* Ease In/Out - Calculates a progress that is smoothly accelerating from a complete stop until the halfway point at which time it then smoothly decelerates toward a complete stop at the end. Using this curve will spend less time in the center of the progress.
* Ease Center - Calculates a progress that quickly accelerating and smooths out at the halfway point at which time it then starts smooth and ends quickly. Using this curve will spend more time in the center of the progress.
In the NeoEase class you will find a whole series of these functions; each with a different curve. A great place to see them visualized is at [Gizam.com Easing](http://www.gizma.com/easing).
![](https://github.com/Makuna/NeoPixelBus/blob/master/extras/curves/cubic.png)
In the NeoEase class you will find a whole series of these functions; each with a different curve. A great place to see them visualized is at [Gizam.com Easing](http://www.gizma.com/easing).
![](https://github.com/Makuna/NeoPixelBus/blob/master/extras/curves/pronounced.png)
This first set are basically similar curve shapes but with more pronounced acceleration as you progress down the list.
* QuadraticIn
* QuadraticOut
* QuadraticInOut
* CubicIn
* CubicOut
* CubicInOut
* QuarticIn
* QuarticOut
* QuarticInOut
* QuinticIn
* QuinticOut
* QuinticInOut
* SinusoidalIn
* SinusoidalOut
* SinusoidalInOut
* ExponentialIn
* ExponentialOut
* ExponentialInOut
* QuadraticIn, QuadraticOut, QuadraticInOut, QuadraticCenter
* CubicIn, CubicOut, CubicInOut, CubicCenter
* QuarticIn, QuarticOut, QuarticInOut, QuarticCenter
* QuinticIn, QuinticOut, QuinticInOut, QuinticCenter
* SinusoidalIn, SinusoidalOut, SinusoidalInOut, SinusoidalCenter
* ExponentialIn, ExponentialOut, ExponentialInOut, ExponentialCenter
The following equations have a more circular shape to the curve. They have a much more dramatic ease at the end.
* CircularIn
* CircularOut
* CircularInOut
![](https://github.com/Makuna/NeoPixelBus/blob/master/extras/curves/circular.png)
The Circular equations have a more circular shape to the curve. They have a much more dramatic ease at the end.
* CircularIn, CircularOut, CircularInOut, CircularCenter
![](https://github.com/Makuna/NeoPixelBus/blob/master/extras/curves/different.png)
This easing equation is specific to animating through a gamma corrected color.
* Gamma
* Gamma
![](https://github.com/Makuna/NeoPixelBus/blob/master/extras/curves/gamma.png)
## LERP - Linear Interpolation
To interpolate between two values using a 0.0 to 1.0 progress value is a simple equation.