org.jdesktop.animation.timing.interpolation
Class Evaluator<T>
java.lang.Object
org.jdesktop.animation.timing.interpolation.Evaluator<T>
public abstract class Evaluator<T>
- extends Object
This class is used by KeyValues to calculate intermediate values for
specific types.
This class has built-in support for the following data types:
- java.lang.Byte
- java.lang.Short
- java.lang.Integer
- java.lang.Long
- java.lang.Float
- java.lang.Double
- java.awt.Color
- java.awt.geom.Point2D
- java.awt.geom.Line2D
- java.awt.geom.Dimension2D
- java.awt.geom.Rectangle2D
- java.awt.geom.RoundRectangle2D
- java.awt.geom.Ellipse2D
- java.awt.geom.Arc2D
- java.awt.geom.QuadCurve2D
- java.awt.geom.CubicCurve2D
Method Summary |
abstract T |
evaluate(T v0,
T v1,
float fraction)
Abstract method to evaluate between two boundary values. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Evaluator
public Evaluator()
evaluate
public abstract T evaluate(T v0,
T v1,
float fraction)
- Abstract method to evaluate between two boundary values. Built-in
implementations all use linear parametric evaluation:
v = v0 + (v1 - v0) * fraction
Extenders of Evaluator will need to override this method
and do something similar for their own types. Note that this
mechanism may be used to create non-linear interpolators for
specific value types, although it may besimpler to just use
the linear/parametric interpolation
technique here and perform non-linear interpolation through
custom Interpolators rather than perform custom calculations in
this method; the point of this class is to allow calculations with
new/unknown types, not to provide another mechanism for non-linear
interpolation.