Class Transition
- javafx.animation.Animation
-
- javafx.animation.Transition
Direct Known Subclasses:
FadeTransition, FillTransition, ParallelTransition, PathTransition, PauseTransition, RotateTransition, ScaleTransition, SequentialTransition, StrokeTransition, TranslateTransition
public abstract class Transition extends Animation
Transition based animations, such as PathTransition and RotateTransition. This class offers a simple framework to define animation. It provides all the basic functionality defined in Animation. Transition requires the implementation of a method interpolate(double) which is the called in each frame, while the Transition is running.
In addition an extending class needs to set the duration of a single cycle with Animation.setCycleDuration(javafx.util.Duration). This duration is usually set by the user via a duration property (as in FadeTransition.duration) for example. But it can also be calculated by the extending class as is done in ParallelTransition and FadeTransition.
Below is a simple example. It creates a small animation that updates the text property of a Text node. It starts with an empty String and adds gradually letter by letter until the full String was set when the animation finishes.
final String content = "Lorem ipsum";
final Text text = new Text(10, 20, "");
final Animation animation = new Transition() {
{
setCycleDuration(Duration.millis(2000));
}
protected void interpolate(double frac) {
final int length = content.length();
final int n = Math.round(length * (float) frac);
text.setText(content.substring(0, n));
}
};
animation.play();
Since:
JavaFX 2.0
See Also:
-
Property Summary
All MethodsInstance MethodsConcrete Methods Type Property and Description ObjectProperty<Interpolator>interpolatorControls the timing for acceleration and deceleration at eachTransitioncycle.-
Properties inherited from class javafx.animation.Animation
autoReverse, currentRate, currentTime, cycleCount, cycleDuration, delay, onFinished, rate, status, totalDuration
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javafx.animation.Animation
Animation.Status
-
-
Field Summary
-
Fields inherited from class javafx.animation.Animation
INDEFINITE
-
-
Constructor Summary
Constructors Constructor and Description Transition()The constructor ofTransition.Transition(double targetFramerate)The constructor ofTransition.
-
Method Summary
All MethodsInstance MethodsAbstract MethodsConcrete Methods Modifier and Type Method and Description protected InterpolatorgetCachedInterpolator()Returns theInterpolator, that was set when theTransitionwas started.InterpolatorgetInterpolator()Gets the value of the property interpolator.protected NodegetParentTargetNode()Returns the targetNodefor animation of thisTransition.protected abstract voidinterpolate(double frac)The methodinterpolate()has to be provided by implementations ofTransition.ObjectProperty<Interpolator>interpolatorProperty()Controls the timing for acceleration and deceleration at eachTransitioncycle.voidsetInterpolator(Interpolator value)Sets the value of the property interpolator.-
Methods inherited from class javafx.animation.Animation
autoReverseProperty, currentRateProperty, currentTimeProperty, cycleCountProperty, cycleDurationProperty, delayProperty, getCuePoints, getCurrentRate, getCurrentTime, getCycleCount, getCycleDuration, getDelay, getOnFinished, getRate, getStatus, getTargetFramerate, getTotalDuration, isAutoReverse, jumpTo, jumpTo, onFinishedProperty, pause, play, playFrom, playFrom, playFromStart, rateProperty, setAutoReverse, setCycleCount, setCycleDuration, setDelay, setOnFinished, setRate, setStatus, statusProperty, stop, totalDurationProperty
-
-
Property Detail
-
interpolator
public final ObjectProperty<Interpolator> interpolatorProperty
Controls the timing for acceleration and deceleration at eachTransitioncycle.This may only be changed prior to starting the transition or after the transition has ended. If the value of
interpolatoris changed for a runningTransition, the animation has to be stopped and started again to pick up the new value.Default interpolator is set to
Interpolator.EASE_BOTH.Default value:
EASE_BOTH
See Also:
-
-
Constructor Detail
-
Transition
public Transition(double targetFramerate)
The constructor ofTransition. This constructor allows to define aAnimation.targetFramerate.Parameters:
targetFramerate- The custom target frame rate for thisTransition
-
Transition
public Transition()
The constructor ofTransition.
-
-
Method Detail
-
setInterpolator
public final void setInterpolator(Interpolator value)
Sets the value of the property interpolator.Property description:
Controls the timing for acceleration and deceleration at each
Transitioncycle.This may only be changed prior to starting the transition or after the transition has ended. If the value of
interpolatoris changed for a runningTransition, the animation has to be stopped and started again to pick up the new value.Default interpolator is set to
Interpolator.EASE_BOTH.Default value:
EASE_BOTH
-
getInterpolator
public final Interpolator getInterpolator()
Gets the value of the property interpolator.Property description:
Controls the timing for acceleration and deceleration at each
Transitioncycle.This may only be changed prior to starting the transition or after the transition has ended. If the value of
interpolatoris changed for a runningTransition, the animation has to be stopped and started again to pick up the new value.Default interpolator is set to
Interpolator.EASE_BOTH.Default value:
EASE_BOTH
-
interpolatorProperty
public final ObjectProperty<Interpolator> interpolatorProperty()
Controls the timing for acceleration and deceleration at eachTransitioncycle.This may only be changed prior to starting the transition or after the transition has ended. If the value of
interpolatoris changed for a runningTransition, the animation has to be stopped and started again to pick up the new value.Default interpolator is set to
Interpolator.EASE_BOTH.Default value:
EASE_BOTH
See Also:
-
getCachedInterpolator
protected Interpolator getCachedInterpolator()
Returns theInterpolator, that was set when theTransitionwas started. Changing theinterpolatorof a runningTransitionshould have no immediate effect. Instead the runningTransitionshould continue to use the originalInterpolatoruntil it is stopped and started again.Returns:
the
Interpolatorthat was set when thisTransitionwas started
-
getParentTargetNode
protected Node getParentTargetNode()
Returns the targetNodefor animation of thisTransition. This method returnsnodeif it is set, else returns itsparent.getTargetNode()otherwise null.
-
interpolate
protected abstract void interpolate(double frac)
The methodinterpolate()has to be provided by implementations ofTransition. While aTransitionis running, this method is called in every frame. The parameter defines the current position with the animation. At the start, the fraction will be0.0and at the end it will be1.0. How the parameter increases, depends on theinterpolator, e.g. if theinterpolatorisInterpolator.LINEAR, the fraction will increase linear. This method must not be called by the user directly.Parameters:
frac- The relative position
-
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.