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

Simple linear interpolator. More...

#include <linear.h>

Inheritance diagram for friz::Linear:

Public Member Functions

 Linear (float startVal, float endVal, int duration)
 
- Public Member Functions inherited from friz::TimedValue
 TimedValue (float startVal, float endVal, int duration_)
 
float getNextValue (int msElapsed, int) override
 
bool isFinished () override
 
- 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 (float progress) override
 generate the value according to progress in time.
 

Additional Inherited Members

- Protected Member Functions inherited from friz::TimedValue
float scale (float curvePoint)
 Given a fractional curve point (typically) in the range (0.f..1.f), interpolate this point between this value's start and end points.
 
- Protected Attributes inherited from friz::TimedValue
int duration
 duration of the event in ms.
 
- Protected Attributes inherited from friz::AnimatedValue
float startVal
 
float endVal
 
float currentVal
 
bool canceled { false }
 
bool finished { false }
 

Detailed Description

Simple linear interpolator.

Constructor & Destructor Documentation

◆ Linear()

friz::Linear::Linear ( float  startVal,
float  endVal,
int  duration 
)

A value that changes linearly.

Parameters
startValinitial value
endValending value
tolerancetolerance for completion.
duration# of frames the effect should take.

Member Function Documentation

◆ generateNextValue()

float friz::Linear::generateNextValue ( float  progress)
overrideprivatevirtual

generate the value according to progress in time.

Parameters
progressposition in the animation (0.0..1.0)
Returns
next value.

Implements friz::TimedValue.


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