org.apache.batik.anim.values
Class AnimatableTransformListValue

java.lang.Object
  extended by org.apache.batik.anim.values.AnimatableValue
      extended by org.apache.batik.anim.values.AnimatableTransformListValue

public class AnimatableTransformListValue
extends AnimatableValue

An SVG transform list value in the animation system.


Field Summary
protected static SVGOMTransform IDENTITY_ROTATE
          Identity transform value of type 'rotate'.
protected static SVGOMTransform IDENTITY_SCALE
          Identity transform value of type 'scale'.
protected static SVGOMTransform IDENTITY_SKEWX
          Identity transform value of type 'skewX'.
protected static SVGOMTransform IDENTITY_SKEWY
          Identity transform value of type 'skewY'.
protected static SVGOMTransform IDENTITY_TRANSLATE
          Identity transform value of type 'translate'.
protected  Vector transforms
          List of transforms.
 
Fields inherited from class org.apache.batik.anim.values.AnimatableValue
decimalFormat, hasChanged, target
 
Constructor Summary
protected AnimatableTransformListValue(AnimationTarget target)
          Creates a new, uninitialized AnimatableTransformListValue.
  AnimatableTransformListValue(AnimationTarget target, AbstractSVGTransform t)
          Creates a new AnimatableTransformListValue with a single transform.
  AnimatableTransformListValue(AnimationTarget target, List transforms)
          Creates a new AnimatableTransformListValue with a transform list.
 
Method Summary
 boolean canPace()
          Returns whether two values of this type can have their distance computed, as needed by paced animation.
 float distanceTo(AnimatableValue other)
          Returns the absolute distance between this value and the specified other value.
 float distanceTo1(AnimatableValue other)
          Returns the distance between this value's first component and the specified other value's first component.
 float distanceTo2(AnimatableValue other)
          Returns the distance between this value's second component and the specified other value's second component.
 float distanceTo3(AnimatableValue other)
          Returns the distance between this value's third component and the specified other value's third component.
 Iterator getTransforms()
          Gets the transforms.
 AnimatableValue getZeroValue()
          Returns a zero value of this AnimatableValue's type.
static AnimatableTransformListValue interpolate(AnimatableTransformListValue res, AnimatableTransformListValue value1, AnimatableTransformListValue value2, AnimatableTransformListValue value3, AnimatableTransformListValue to1, AnimatableTransformListValue to2, AnimatableTransformListValue to3, float interpolation1, float interpolation2, float interpolation3, AnimatableTransformListValue accumulation, int multiplier)
          Performs a three-way interpolation between the specified values.
static AnimatableTransformListValue interpolate(AnimatableTransformListValue res, AnimatableTransformListValue value1, AnimatableTransformListValue value2, AnimatableTransformListValue to1, AnimatableTransformListValue to2, float interpolation1, float interpolation2, AnimatableTransformListValue accumulation, int multiplier)
          Performs a two-way interpolation between the specified values.
 AnimatableValue interpolate(AnimatableValue result, AnimatableValue to, float interpolation, AnimatableValue accumulation, int multiplier)
          Performs interpolation to the given value.
 String toStringRep()
          Returns the CSS text representation of the value.
 
Methods inherited from class org.apache.batik.anim.values.AnimatableValue
formatNumber, getCssText, hasChanged, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

IDENTITY_SKEWX

protected static SVGOMTransform IDENTITY_SKEWX
Identity transform value of type 'skewX'.


IDENTITY_SKEWY

protected static SVGOMTransform IDENTITY_SKEWY
Identity transform value of type 'skewY'.


IDENTITY_SCALE

protected static SVGOMTransform IDENTITY_SCALE
Identity transform value of type 'scale'.


IDENTITY_ROTATE

protected static SVGOMTransform IDENTITY_ROTATE
Identity transform value of type 'rotate'.


IDENTITY_TRANSLATE

protected static SVGOMTransform IDENTITY_TRANSLATE
Identity transform value of type 'translate'.


transforms

protected Vector transforms
List of transforms.

Constructor Detail

AnimatableTransformListValue

protected AnimatableTransformListValue(AnimationTarget target)
Creates a new, uninitialized AnimatableTransformListValue.


AnimatableTransformListValue

public AnimatableTransformListValue(AnimationTarget target,
                                    AbstractSVGTransform t)
Creates a new AnimatableTransformListValue with a single transform.


AnimatableTransformListValue

public AnimatableTransformListValue(AnimationTarget target,
                                    List transforms)
Creates a new AnimatableTransformListValue with a transform list.

Method Detail

interpolate

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

Specified by:
interpolate in class AnimatableValue
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

interpolate

public static AnimatableTransformListValue interpolate(AnimatableTransformListValue res,
                                                       AnimatableTransformListValue value1,
                                                       AnimatableTransformListValue value2,
                                                       AnimatableTransformListValue to1,
                                                       AnimatableTransformListValue to2,
                                                       float interpolation1,
                                                       float interpolation2,
                                                       AnimatableTransformListValue accumulation,
                                                       int multiplier)
Performs a two-way interpolation between the specified values. value[12] and to[12] must all be of the same type, either scale or translation transforms, or all null.


interpolate

public static AnimatableTransformListValue interpolate(AnimatableTransformListValue res,
                                                       AnimatableTransformListValue value1,
                                                       AnimatableTransformListValue value2,
                                                       AnimatableTransformListValue value3,
                                                       AnimatableTransformListValue to1,
                                                       AnimatableTransformListValue to2,
                                                       AnimatableTransformListValue to3,
                                                       float interpolation1,
                                                       float interpolation2,
                                                       float interpolation3,
                                                       AnimatableTransformListValue accumulation,
                                                       int multiplier)
Performs a three-way interpolation between the specified values. value[123] and to[123] must all be single rotation transforms, or all null.


getTransforms

public Iterator getTransforms()
Gets the transforms.


canPace

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

Specified by:
canPace in class AnimatableValue

distanceTo

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

Specified by:
distanceTo in class AnimatableValue

distanceTo1

public float distanceTo1(AnimatableValue other)
Returns the distance between this value's first component and the specified other value's first component.


distanceTo2

public float distanceTo2(AnimatableValue other)
Returns the distance between this value's second component and the specified other value's second component.


distanceTo3

public float distanceTo3(AnimatableValue other)
Returns the distance between this value's third component and the specified other value's third component.


getZeroValue

public AnimatableValue getZeroValue()
Returns a zero value of this AnimatableValue's type. This returns an empty transform list.

Specified by:
getZeroValue in class AnimatableValue

toStringRep

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

Overrides:
toStringRep in class AnimatableValue


Copyright © 2008 Apache Software Foundation. All Rights Reserved.