Package org.apache.batik.anim.values
Class AnimatableTransformListValue
- java.lang.Object
-
- org.apache.batik.anim.values.AnimatableValue
-
- org.apache.batik.anim.values.AnimatableTransformListValue
-
public class AnimatableTransformListValue extends AnimatableValue
An SVG transform list value in the animation system.
-
-
Field Summary
Fields Modifier and Type Field Description 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 java.util.Vector
transforms
List of transforms.-
Fields inherited from class org.apache.batik.anim.values.AnimatableValue
decimalFormat, hasChanged, target
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AnimatableTransformListValue(AnimationTarget target)
Creates a new, uninitialized AnimatableTransformListValue.AnimatableTransformListValue(AnimationTarget target, java.util.List transforms)
Creates a new AnimatableTransformListValue with a transform list.AnimatableTransformListValue(AnimationTarget target, AbstractSVGTransform t)
Creates a new AnimatableTransformListValue with a single transform.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.java.util.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 to1, AnimatableTransformListValue to2, float interpolation1, float interpolation2, AnimatableTransformListValue accumulation, int multiplier)
Performs a two-way interpolation between the specified values.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.AnimatableValue
interpolate(AnimatableValue result, AnimatableValue to, float interpolation, AnimatableValue accumulation, int multiplier)
Performs interpolation to the given value.java.lang.String
toStringRep()
Returns the CSS text representation of the value.-
Methods inherited from class org.apache.batik.anim.values.AnimatableValue
formatNumber, getCssText, hasChanged, toString
-
-
-
-
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 java.util.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, java.util.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 classAnimatableValue
- Parameters:
result
- the object in which to store the result of the interpolation, or null if a new object should be createdto
- the value this value should be interpolated towards, or null if no actual interpolation should be performedinterpolation
- the interpolation distance, 0 <= interpolation <= 1accumulation
- an accumulation to add to the interpolated valuemultiplier
- 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 java.util.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 classAnimatableValue
-
distanceTo
public float distanceTo(AnimatableValue other)
Returns the absolute distance between this value and the specified other value.- Specified by:
distanceTo
in classAnimatableValue
-
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 classAnimatableValue
-
toStringRep
public java.lang.String toStringRep()
Returns the CSS text representation of the value.- Overrides:
toStringRep
in classAnimatableValue
-
-