org.apache.batik.anim
public abstract class AnimationEngine extends Object
| Nested Class Summary | |
|---|---|
| protected static class | AnimationEngine.AnimationInfo
Class to hold target information of an animation. |
| protected class | AnimationEngine.Listener
Listener class for changes to base values on a target element. |
| protected static class | AnimationEngine.Sandwich
Class to hold an animation sandwich for a particular attribute. |
| protected static class | AnimationEngine.TargetInfo
Class to hold XML and CSS animations for a target element. |
| Field Summary | |
|---|---|
| static short | ANIM_TYPE_CSS |
| static short | ANIM_TYPE_OTHER |
| static short | ANIM_TYPE_XML |
| protected HashMap | animations
Map of AbstractAnimations to AnimationInfo objects. |
| protected Document | document
The document this AnimationEngine is managing animation for. |
| protected static Entry[] | MAP_ENTRY_ARRAY |
| protected long | pauseTime
The time at which the document was paused, or 0 if the document is not
paused. |
| protected AnimationEngine.Listener | targetListener
The listener object for animation target base value changes. |
| protected HashMap | targets
Map of AnimationTargets to TargetInfo objects. |
| protected TimedDocumentRoot | timedDocumentRoot
The root time container for the document. |
| Constructor Summary | |
|---|---|
| AnimationEngine(Document doc)
Creates a new AnimationEngine for the given document. | |
| Method Summary | |
|---|---|
| void | addAnimation(AnimationTarget target, short type, String ns, String an, AbstractAnimation anim)
Adds an animation to the document. |
| void | addTimegraphListener(TimegraphListener l)
Adds a TimegraphListener to the document. |
| protected abstract TimedDocumentRoot | createDocumentRoot()
Creates a new returns a new TimedDocumentRoot object for the document. |
| void | dispose()
Disposes this animation engine. |
| protected AnimationEngine.AnimationInfo | getAnimationInfo(AbstractAnimation anim)
Returns the AnimationInfo for the given AbstractAnimation. |
| float | getCurrentTime()
Returns the current document time. |
| protected AnimationEngine.Sandwich | getSandwich(AnimationTarget target, short type, String ns, String an)
Returns the Sandwich for the given animation type/attribute. |
| protected AnimationEngine.TargetInfo | getTargetInfo(AnimationTarget target)
Returns the TargetInfo for the given AnimationTarget. |
| boolean | isPaused()
Returns whether animations are currently paused. |
| protected void | moveToBottom(AbstractAnimation anim)
Moves the given animation to the bottom of the sandwich. |
| protected void | moveToTop(AbstractAnimation anim)
Moves the given animation to the top of the sandwich. |
| void | pause()
Pauses the animations. |
| protected void | pushDown(AbstractAnimation anim)
Moves the animation down the sandwich such that it is in the right
position according to begin time and document order. |
| void | removeAnimation(AbstractAnimation anim)
Removes an animation from the document. |
| void | removeFill(AbstractAnimation anim)
Invoked to indicate that this timed element has had its fill removed. |
| void | removeTimegraphListener(TimegraphListener l)
Removes a TimegraphListener from the document. |
| void | sampledAt(AbstractAnimation anim, float simpleTime, float simpleDur, int repeatIteration)
Invoked to indicate that this timed element has been sampled at the given
time.
|
| void | sampledLastValue(AbstractAnimation anim, int repeatIteration)
Invoked to indicate that this timed element has been sampled at the end
of its active time, at an integer multiple of the simple duration. |
| float | setCurrentTime(float t)
Sets the current document time. |
| protected float | tick(float time, boolean hyperlinking)
Updates the animations in the document to the given document time. |
| void | toActive(AbstractAnimation anim, float begin)
Invoked to indicate an animation became active at the specified time.
|
| void | toInactive(AbstractAnimation anim, boolean isFrozen)
Invoked to indicate that this timed element became inactive.
|
| void | unpause()
Unpauses the animations. |
Parameters: target the target element of the animation type the type of animation (must be one of the
ANIM_TYPE_* constants defined in this class ns the namespace URI of the attribute being animated, if
type == ANIM_TYPE_XML an the attribute name if type == ANIM_TYPE_XML, the property name if type ==
ANIM_TYPE_CSS, and the animation type otherwise anim the animation
Parameters: anim the animation simpleTime the sample time in local simple time simpleDur the simple duration of the element repeatIteration the repeat iteration during which the element was sampled
Parameters: time the document time to sample at hyperlinking whether the document should be seeked to the given time, as with hyperlinking
Parameters: anim the animation begin the time the element became active, in document simple time
Parameters: anim the animation isFrozen whether the element is frozen or not