org.apache.batik.anim.values
Class AnimatableValue

java.lang.Object
  extended by org.apache.batik.anim.values.AnimatableValue
Direct Known Subclasses:
AnimatableBooleanValue, AnimatableColorValue, AnimatableIntegerValue, AnimatableLengthListValue, AnimatableLengthValue, AnimatableMotionPointValue, AnimatableNumberListValue, AnimatableNumberOptionalNumberValue, AnimatableNumberValue, AnimatablePathDataValue, AnimatablePreserveAspectRatioValue, AnimatableRectValue, AnimatableStringValue, AnimatableTransformListValue

public abstract class AnimatableValue
extends Object

An abstract class for values in the animation engine.


Field Summary
protected static DecimalFormat decimalFormat
          A formatting object to get CSS compatible float strings.
protected  boolean hasChanged
          Whether this value has changed since the last call to hasChanged().
protected  AnimationTarget target
          The target of the animation.
 
Constructor Summary
protected AnimatableValue(AnimationTarget target)
          Creates a new AnimatableValue.
 
Method Summary
abstract  boolean canPace()
          Returns whether two values of this type can have their distance computed, as needed by paced animation.
abstract  float distanceTo(AnimatableValue other)
          Returns the absolute distance between this value and the specified other value.
static String formatNumber(float f)
          Returns a CSS compatible string version of the specified float.
 String getCssText()
          Returns the CSS text representation of the value.
abstract  AnimatableValue getZeroValue()
          Returns a zero value of this AnimatableValue's type.
 boolean hasChanged()
          Returns whether the value in this AnimatableValue has been modified.
abstract  AnimatableValue interpolate(AnimatableValue result, AnimatableValue to, float interpolation, AnimatableValue accumulation, int multiplier)
          Performs interpolation to the given value.
 String toString()
          Returns a string representation of this object prefixed with its class name.
 String toStringRep()
          Returns a string representation of this object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

decimalFormat

protected static DecimalFormat decimalFormat
A formatting object to get CSS compatible float strings.


target

protected AnimationTarget target
The target of the animation.


hasChanged

protected boolean hasChanged
Whether this value has changed since the last call to hasChanged(). This must be updated within interpolate(org.apache.batik.anim.values.AnimatableValue, org.apache.batik.anim.values.AnimatableValue, float, org.apache.batik.anim.values.AnimatableValue, int) in descendant classes.

Constructor Detail

AnimatableValue

protected AnimatableValue(AnimationTarget target)
Creates a new AnimatableValue.

Method Detail

formatNumber

public static String formatNumber(float f)
Returns a CSS compatible string version of the specified float.


interpolate

public abstract AnimatableValue interpolate(AnimatableValue result,
                                            AnimatableValue to,
                                            float interpolation,
                                            AnimatableValue accumulation,
                                            int multiplier)
Performs interpolation to the given value.

Parameters:
result - the object in which to store the result of the interpolation, or null if a new object should be created
to - the value this value should be interpolated towards, or null if no actual interpolation should be performed
interpolation - the interpolation distance, 0 <= interpolation <= 1
accumulation - an accumulation to add to the interpolated value
multiplier - an amount the accumulation values should be multiplied by before being added to the interpolated value

canPace

public abstract boolean canPace()
Returns whether two values of this type can have their distance computed, as needed by paced animation.


distanceTo

public abstract float distanceTo(AnimatableValue other)
Returns the absolute distance between this value and the specified other value.


getZeroValue

public abstract AnimatableValue getZeroValue()
Returns a zero value of this AnimatableValue's type.


getCssText

public String getCssText()
Returns the CSS text representation of the value.


hasChanged

public boolean hasChanged()
Returns whether the value in this AnimatableValue has been modified.


toStringRep

public String toStringRep()
Returns a string representation of this object. This should be overridden in classes that do not have a CSS representation.


toString

public String toString()
Returns a string representation of this object prefixed with its class name.

Overrides:
toString in class Object


Copyright © 2008 Apache Software Foundation. All Rights Reserved.