org.apache.batik.anim.values

Class AnimatableLengthValue

public class AnimatableLengthValue extends AnimatableValue

An SVG length value in the animation system.
Field Summary
protected shortlengthType
The length type.
protected floatlengthValue
The length value.
protected shortpercentageInterpretation
How to interpret percentage values.
protected static String[]UNITS
Length units.
Constructor Summary
protected AnimatableLengthValue(AnimationTarget target)
Creates a new AnimatableLengthValue with no length.
AnimatableLengthValue(AnimationTarget target, short type, float v, short pcInterp)
Creates a new AnimatableLengthValue.
Method Summary
booleancanPace()
Returns whether two values of this type can have their distance computed, as needed by paced animation.
static booleancompatibleTypes(short t1, short pi1, short t2, short pi2)
Determines if two SVG length types are compatible.
floatdistanceTo(AnimatableValue other)
Returns the absolute distance between this value and the specified other value.
StringgetCssText()
Returns the CSS text representation of the value.
intgetLengthType()
Returns the unit type of this length value.
floatgetLengthValue()
Returns the magnitude of this length value.
AnimatableValuegetZeroValue()
Returns a zero value of this AnimatableValue's type.
AnimatableValueinterpolate(AnimatableValue result, AnimatableValue to, float interpolation, AnimatableValue accumulation, int multiplier)
Performs interpolation to the given value.

Field Detail

lengthType

protected short lengthType
The length type.

lengthValue

protected float lengthValue
The length value. This should be one of the constants defined in SVGLength.

percentageInterpretation

protected short percentageInterpretation
How to interpret percentage values. One of the AnimationTarget.PERCENTAGE_* constants.

UNITS

protected static final String[] UNITS
Length units.

Constructor Detail

AnimatableLengthValue

protected AnimatableLengthValue(AnimationTarget target)
Creates a new AnimatableLengthValue with no length.

AnimatableLengthValue

public AnimatableLengthValue(AnimationTarget target, short type, float v, short pcInterp)
Creates a new AnimatableLengthValue.

Method Detail

canPace

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

compatibleTypes

public static boolean compatibleTypes(short t1, short pi1, short t2, short pi2)
Determines if two SVG length types are compatible.

Parameters: t1 the first SVG length type pi1 the first percentage interpretation type t2 the second SVG length type pi2 the second percentage interpretation type

distanceTo

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

getCssText

public String getCssText()
Returns the CSS text representation of the value. This could use org.apache.batik.css.engine.value.FloatValue.getCssText, but we don't want a dependency on the CSS package.

getLengthType

public int getLengthType()
Returns the unit type of this length value.

getLengthValue

public float getLengthValue()
Returns the magnitude of this length value.

getZeroValue

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

interpolate

public AnimatableValue interpolate(AnimatableValue result, AnimatableValue to, float interpolation, AnimatableValue accumulation, int multiplier)
Performs interpolation to the given value.
Copyright B) 2008 Apache Software Foundation. All Rights Reserved.