friz
An animation control system for JUCE
Loading...
Searching...
No Matches
friz::EaseOut Class Reference

A slew-based acceleration. starts slowly & accelerates. More...

#include <easing.h>

Inheritance diagram for friz::EaseOut:

Public Member Functions

 EaseOut (float startVal, float endVal, float tolerance, float slewRate)
 
- Public Member Functions inherited from friz::EasingCurve
 EasingCurve (float startVal, float endVal, float tolerance, float slewRate_)
 
- Public Member Functions inherited from friz::ToleranceValue
 ToleranceValue (float startVal, float endVal, float tolerance)
 
float getNextValue (int, int msSinceLastUpdate) override
 Calculate the next value in the sequence based on the delta time since last updated. Internally, we use an update rate of 1 kHz to recalculate values so that we can remain consistent as the actual animation frame rate changes.
 
bool isFinished () override
 Test to see if this value has reached its end state.
 
- Public Member Functions inherited from friz::AnimatedValue
 AnimatedValue (float startVal_, float endVal_)
 Base class init for the animated value classes.
 
virtual float getNextValue (int msElapsed, int msSinceLastUpdate)=0
 
float getEndValue () const
 get the ending state of this value object. When we cancel an in-progress animation, we may need to snap to the end value, and this gives a way to get there immediately.
 
virtual bool isFinished ()=0
 
virtual bool updateTarget (float)
 Attempt to change the end value of an animation that's currently in process.
 
void cancel (bool moveToEndPosition)
 Cancel an in-progress animation.
 

Private Member Functions

float generateNextValue () override
 Execute a single step of this curve's function.
 

Private Attributes

float currentRate
 

Additional Inherited Members

- Protected Attributes inherited from friz::EasingCurve
float slewRate
 
- Protected Attributes inherited from friz::ToleranceValue
float tolerance
 
- Protected Attributes inherited from friz::AnimatedValue
float startVal
 
float endVal
 
float currentVal
 
bool canceled { false }
 
bool finished { false }
 

Detailed Description

A slew-based acceleration. starts slowly & accelerates.

Constructor & Destructor Documentation

◆ EaseOut()

friz::EaseOut::EaseOut ( float  startVal,
float  endVal,
float  tolerance,
float  slewRate 
)

Accelerate into the end value.

Parameters
startValstart val
endValend val
tolerancetolerance for stopping
slewRateslew rate, must be > 1.

Member Function Documentation

◆ generateNextValue()

float friz::EaseOut::generateNextValue ( )
overrideprivatevirtual

Execute a single step of this curve's function.

Returns
next value.

Implements friz::ToleranceValue.


The documentation for this class was generated from the following files: