Class 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 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:
Nested Class Summary
Nested classes/interfaces declared in class javafx.animation.Animation
Animation.Status
Property Summary
| Type | Property | Description |
|---|---|---|
final ObjectProperty |
interpolator |
Controls the timing for acceleration and deceleration at each Transition cycle. |
Properties declared in class javafx.animation.Animation
autoReverse, currentRate, currentTime, cycleCount, cycleDuration, delay, onFinished, rate, status, totalDuration
Field Summary
Fields declared in class javafx.animation.Animation
INDEFINITE
Constructor Summary
| Constructor | Description |
|---|---|
Transition() |
The constructor of Transition. |
Transition |
The constructor of Transition. |
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
protected Interpolator |
getCachedInterpolator() |
Returns the Interpolator, that was set when the Transition was started. |
final Interpolator |
getInterpolator() |
Gets the value of the interpolator property. |
protected Node |
getParentTargetNode() |
Returns the first non- null target Node in the parent hierarchy of this Transition, or null if such a node is not found. |
protected abstract void |
interpolate |
The method interpolate() has to be provided by implementations of Transition. |
final ObjectProperty |
interpolatorProperty() |
Controls the timing for acceleration and deceleration at each Transition cycle. |
final void |
setInterpolator |
Sets the value of the interpolator property. |
Methods declared in 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 Details
interpolator
public final ObjectProperty<Interpolator> interpolatorProperty
Transition cycle. This may only be changed prior to starting the transition or after the transition has ended. If the value of interpolator is changed for a running Transition, 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 Details
Transition
public Transition(double targetFramerate)
Transition. This constructor allows to define a target framerate.- Parameters:
-
targetFramerate- The custom target frame rate for thisTransition
Transition
public Transition()
Transition.Method Details
setInterpolator
public final void setInterpolator(Interpolator value)
interpolator property.- 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
- Parameters:
-
value- the value for theinterpolatorproperty - See Also:
getInterpolator
public final Interpolator getInterpolator()
interpolator property.- 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
- Returns:
- the value of the
interpolatorproperty - See Also:
interpolatorProperty
public final ObjectProperty<Interpolator> interpolatorProperty()
Transition cycle. This may only be changed prior to starting the transition or after the transition has ended. If the value of interpolator is changed for a running Transition, 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
- Returns:
- the
interpolatorproperty - See Also:
getCachedInterpolator
protected Interpolator getCachedInterpolator()
Interpolator, that was set when the Transition was started. Changing the interpolator of a running Transition should have no immediate effect. Instead the running Transition should continue to use the original Interpolator until it is stopped and started again.- Returns:
- the
Interpolatorthat was set when thisTransitionwas started
getParentTargetNode
protected Node getParentTargetNode()
null target Node in the parent hierarchy of this Transition, or null if such a node is not found. A parent animation is one that can have child animations. Examples are SequentialTransition and ParallelTransition. A parent animation can also be a child of another parent animation.
Note that if this Transition has a target node set and is not a parent animation, it will be ignored during the call as this method only queries parent animations.
- Returns:
- the target
Node
interpolate
protected abstract void interpolate(double frac)
interpolate() has to be provided by implementations of Transition. While a Transition is running, this method is called in every frame. The parameter defines the current position with the animation. At the start, the fraction will be 0.0 and at the end it will be 1.0. How the parameter increases, depends on the interpolator, e.g. if the interpolator is Interpolator.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.