Interpolate Class 
Namespace: DustProductions.Core
public class Interpolate
The Interpolate type exposes the following members.
Name  Description  

Interpolate  Initializes a new instance of the Interpolate class 
Name  Description  

Ease(InterpolateEaseType, Single, Single, Single, Single) 
Interpolation using given easing method.
 
Ease(InterpolateEaseType, Vector3, Vector3, Single, Single) 
Vector3 interpolation using given easing method. Easing is done independently
on all three vector axis.
 
Ease(InterpolateFunction, Vector3, Vector3, Single, Single) 
Vector3 interpolation using given easing method. Easing is done independently
on all three vector axis.
 
EaseDistance(InterpolateEaseType, Single, Single, Single, Single) 
Interpolation using given easing method.
 
EaseDistance(InterpolateEaseType, Vector3, Vector3, Single, Single) 
Vector3 interpolation using given easing method. Easing is done independently
on all three vector axis.
 
EaseDistance(InterpolateFunctionDistance, Vector3, Vector3, Single, Single) 
Vector3 interpolation using given easing method. Easing is done independently
on all three vector axis.
 
EaseInCircular 
Circular easing in  accelerating from zero velocity
 
EaseInCircularDistance 
Circular easing in  accelerating from zero velocity
 
EaseInCubic 
Cubic easing in  accelerating from zero velocity
 
EaseInCubicDistance 
Cubic easing in  accelerating from zero velocity
 
EaseInExponential 
Exponential easing in  accelerating from zero velocity
 
EaseInExponentialDistance 
Exponential easing in  accelerating from zero velocity
 
EaseInOutCircular 
Circular easing in/out  acceleration until halfway, then deceleration
 
EaseInOutCircularDistance 
Circular easing in/out  acceleration until halfway, then deceleration
 
EaseInOutCubic 
Cubic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutCubicDistance 
Cubic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutExponential 
Exponential easing in/out  accelerating until halfway, then decelerating
 
EaseInOutExponentialDistance 
Exponential easing in/out  accelerating until halfway, then decelerating
 
EaseInOutQuad 
Quadratic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutQuadDistance 
Quadratic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutQuart 
Quartic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutQuartDistance 
Quartic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutQuint 
Quintic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutQuintDistance 
Quintic easing in/out  acceleration until halfway, then deceleration
 
EaseInOutSine 
Sinusoidal easing in/out  accelerating until halfway, then decelerating
 
EaseInOutSineDistance 
Sinusoidal easing in/out  accelerating until halfway, then decelerating
 
EaseInQuad 
Quadratic easing in  accelerating from zero velocity
 
EaseInQuadDistance 
Quadratic easing in  accelerating from zero velocity
 
EaseInQuart 
Quartic easing in  accelerating from zero velocity
 
EaseInQuartDistance 
Quartic easing in  accelerating from zero velocity
 
EaseInQuint 
Quintic easing in  accelerating from zero velocity
 
EaseInQuintDistance 
Quintic easing in  accelerating from zero velocity
 
EaseInSine 
Sinusoidal easing in  accelerating from zero velocity
 
EaseInSineDistance 
Sinusoidal easing in  accelerating from zero velocity
 
EaseOutCircular 
Circular easing out  decelerating to zero velocity
 
EaseOutCircularDistance 
Circular easing out  decelerating to zero velocity
 
EaseOutCubic 
Cubic easing out  decelerating to zero velocity
 
EaseOutCubicDistance 
Cubic easing out  decelerating to zero velocity
 
EaseOutExponential 
Exponential easing out  decelerating to zero velocity
 
EaseOutExponentialDistance 
Exponential easing out  decelerating to zero velocity
 
EaseOutQuad 
Quadratic easing out  decelerating to zero velocity
 
EaseOutQuadDistance 
Quadratic easing out  decelerating to zero velocity
 
EaseOutQuart 
Quartic easing out  decelerating to zero velocity
 
EaseOutQuartDistance 
Quartic easing out  decelerating to zero velocity
 
EaseOutQuint 
Quintic easing out  decelerating to zero velocity
 
EaseOutQuintDistance 
Quintic easing out  decelerating to zero velocity
 
EaseOutSine 
Sinusoidal easing out  decelerating to zero velocity
 
EaseOutSineDistance 
Sinusoidal easing out  decelerating to zero velocity
 
GetEaseDistanceFunction 
Returns the static method that implements the given easing type for scalars.
Use this method to easily switch between easing interpolation types.
All easing methods clamp elapsedTime so that it is always greater than or equal to duration.
 
GetEaseFunction 
Returns the static method that implements the given easing type for scalars.
Use this method to easily switch between easing interpolation types.
All easing methods clamp elapsedTime so that it is always greater than or equal to duration.
 
Linear 
Linear interpolation (same as Mathf.Lerp)
 
LinearDistance 
Linear interpolation (same as Mathf.Lerp)
 
NewBezier(InterpolateFunction, Transform, Int32) 
Instead of interpolating based on time, generate n interpolated points
(slices) between the first and last node.
 
NewBezier(InterpolateFunction, Transform, Single) 
Returns sequence generator from the first node to the last node over
duration time using the points inbetween the first and last node
as control points of a bezier curve used to generate the interpolated points
in the sequence. If there are no control points (ie. only two nodes, first
and last) then this behaves exactly the same as NewEase(). In other words
a zerodegree bezier spline curve is just the easing method. The sequence
is generated as it is accessed using the Time.deltaTime to calculate the
portion of duration that has elapsed.
 
NewBezier(InterpolateFunction, Vector3, Int32) 
A Vector3[] variation of the Transform[] NewBezier() function.
Same functionality but using Vector3s to define bezier curve.
 
NewBezier(InterpolateFunction, Vector3, Single) 
A Vector3[] variation of the Transform[] NewBezier() function.
Same functionality but using Vector3s to define bezier curve.
 
NewCatmullRom(Transform, Int32, Boolean) 
Returns sequence generator from the first node, through each control point,
and to the last node. N points are generated between each node (slices)
using CatmullRom.
 
NewCatmullRom(Vector3, Int32, Boolean) 
A Vector3[] variation of the Transform[] NewCatmullRom() function.
Same functionality but using Vector3s to define curve.
 
NewEase(InterpolateFunction, Vector3, Vector3, Int32) 
Instead of easing based on time, generate n interpolated points (slices)
between the start and end positions.
 
NewEase(InterpolateFunction, Vector3, Vector3, Single) 
Returns sequence generator from start to end over duration using the
given easing function. The sequence is generated as it is accessed
using the Time.deltaTime to calculate the portion of duration that has
elapsed.
 
TryScheduleEaseJob 
Perform an interpolation calculation on another thread with whatever EaseType you like. You are responsible for handling the NativeArray allocations / deallocations, and completing the job. This will only schedule the job for you.
 
TryScheduleParallelEaseJob 
Use this method to setup an ease job for whatever EaseType you like. You are responsible for handling the NativeArray allocations / deallocations, and completing the job. This will only schedule the job for you.
