org.apache.batik.anim
Class AbstractAnimation

java.lang.Object
  extended by org.apache.batik.anim.AbstractAnimation
Direct Known Subclasses:
InterpolatingAnimation, SetAnimation

public abstract class AbstractAnimation
extends Object

An abstract base class for the different types of animation.


Field Summary
protected  AnimatableElement animatableElement
          The AnimatableElement that gives access to underlying values in the document.
protected  float beginTime
          The time at which this animation became active.
static short CALC_MODE_DISCRETE
           
static short CALC_MODE_LINEAR
           
static short CALC_MODE_PACED
           
static short CALC_MODE_SPLINE
           
protected  AnimatableValue composedValue
          The value of this animation composed with any others.
protected  AbstractAnimation higherAnimation
          The animation that is higher in the sandwich.
protected  boolean isActive
          Whether this animation is active.
protected  boolean isDirty
          Whether this animation needs recomputing.
protected  boolean isFrozen
          Whether this animation is frozen.
protected  AbstractAnimation lowerAnimation
          The animation that is lower in the sandwich.
protected  TimedElement timedElement
          The TimedElement that controls the timing of this animation.
protected  boolean toAnimation
          Whether this animation is a 'to-animation'.
protected  boolean usesUnderlyingValue
          Whether this animation depends on the underlying value.
protected  AnimatableValue value
          The value of this animation.
 
Constructor Summary
protected AbstractAnimation(TimedElement timedElement, AnimatableElement animatableElement)
          Creates a new Animation.
 
Method Summary
 AnimatableValue getComposedValue()
          Returns the composed value of this animation, or null if it isn't active.
 TimedElement getTimedElement()
          Returns the TimedElement for this animation.
 AnimatableValue getValue()
          Returns the value of this animation, or null if it isn't active.
protected  void markDirty()
          Marks this animation and any animation that depends on it as dirty.
protected abstract  void sampledAt(float simpleTime, float simpleDur, int repeatIteration)
          Called when the element is sampled at the given time.
protected  void sampledLastValue(int repeatIteration)
          Called when the element is sampled for its "last" value.
 String toString()
          Returns a string representation of this animation.
 boolean usesUnderlyingValue()
          Returns whether this animation depends on the underlying value.
protected  boolean willReplace()
          Returns whether this animation will replace values on animations lower in the sandwich.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

CALC_MODE_DISCRETE

public static final short CALC_MODE_DISCRETE
See Also:
Constant Field Values

CALC_MODE_LINEAR

public static final short CALC_MODE_LINEAR
See Also:
Constant Field Values

CALC_MODE_PACED

public static final short CALC_MODE_PACED
See Also:
Constant Field Values

CALC_MODE_SPLINE

public static final short CALC_MODE_SPLINE
See Also:
Constant Field Values

timedElement

protected TimedElement timedElement
The TimedElement that controls the timing of this animation.


animatableElement

protected AnimatableElement animatableElement
The AnimatableElement that gives access to underlying values in the document.


lowerAnimation

protected AbstractAnimation lowerAnimation
The animation that is lower in the sandwich.


higherAnimation

protected AbstractAnimation higherAnimation
The animation that is higher in the sandwich.


isDirty

protected boolean isDirty
Whether this animation needs recomputing.


isActive

protected boolean isActive
Whether this animation is active.


isFrozen

protected boolean isFrozen
Whether this animation is frozen.


beginTime

protected float beginTime
The time at which this animation became active. Used for ensuring the sandwich order is correct when multiple animations become active simultaneously.


value

protected AnimatableValue value
The value of this animation.


composedValue

protected AnimatableValue composedValue
The value of this animation composed with any others.


usesUnderlyingValue

protected boolean usesUnderlyingValue
Whether this animation depends on the underlying value.


toAnimation

protected boolean toAnimation
Whether this animation is a 'to-animation'.

Constructor Detail

AbstractAnimation

protected AbstractAnimation(TimedElement timedElement,
                            AnimatableElement animatableElement)
Creates a new Animation.

Method Detail

getTimedElement

public TimedElement getTimedElement()
Returns the TimedElement for this animation.


getValue

public AnimatableValue getValue()
Returns the value of this animation, or null if it isn't active.


getComposedValue

public AnimatableValue getComposedValue()
Returns the composed value of this animation, or null if it isn't active.


toString

public String toString()
Returns a string representation of this animation.

Overrides:
toString in class Object

usesUnderlyingValue

public boolean usesUnderlyingValue()
Returns whether this animation depends on the underlying value.


willReplace

protected boolean willReplace()
Returns whether this animation will replace values on animations lower in the sandwich.


markDirty

protected void markDirty()
Marks this animation and any animation that depends on it as dirty.


sampledLastValue

protected void sampledLastValue(int repeatIteration)
Called when the element is sampled for its "last" value.


sampledAt

protected abstract void sampledAt(float simpleTime,
                                  float simpleDur,
                                  int repeatIteration)
Called when the element is sampled at the given time. This updates the value of the animation if active.



Copyright © 2008 Apache Software Foundation. All Rights Reserved.