org.jdesktop.animation.timing.interpolation
Class Evaluator<T>

java.lang.Object
  extended by 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:


Constructor Summary
Evaluator()
           
 
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
 

Constructor Detail

Evaluator

public Evaluator()
Method Detail

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.