Class RotateTransition


  • public final class RotateTransition
    extends Transition
    This Transition creates a rotation animation that spans its duration. This is done by updating the rotate variable of the node at regular interval. The angle value is specified in degrees.

    It starts from the fromAngle if provided else uses the node's rotate value.

    It stops at the toAngle value if provided else it will use start value plus byAngle.

    The toAngle takes precedence if both toAngle and byAngle are specified.

    Code Segment Example:

     
     import javafx.scene.shape.*;
     import javafx.animation.*;
    
     ...
    
         Rectangle rect = new Rectangle (100, 40, 100, 100);
         rect.setArcHeight(50);
         rect.setArcWidth(50);
         rect.setFill(Color.VIOLET);
    
         RotateTransition rt = new RotateTransition(Duration.millis(3000), rect);
         rt.setByAngle(180);
         rt.setCycleCount(4);
         rt.setAutoReverse(true);
    
         rt.play();
    
     ...
    
     
     
    Since:
    JavaFX 2.0
    See Also:
    Transition, Animation
    • Property Detail

      • node

        public final ObjectProperty<Node> nodeProperty
        The target node of this RotateTransition.

        It is not possible to change the target node of a running RotateTransition. If the value of node is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        See Also:
        getNode(), setNode(Node)
      • duration

        public final ObjectProperty<Duration> durationProperty
        The duration of this RotateTransition.

        It is not possible to change the duration of a running RotateTransition. If the value of duration is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Note: While the unit of duration is a millisecond, the granularity depends on the underlying operating system and will in general be larger. For example animations on desktop systems usually run with a maximum of 60fps which gives a granularity of ~17 ms. Setting duration to value lower than Duration.ZERO will result in IllegalArgumentException.

        Default value:
        400ms
        See Also:
        getDuration(), setDuration(Duration)
      • axis

        public final ObjectProperty<Point3D> axisProperty
        Specifies the axis of rotation for this RotateTransition. Use node.rotationAxis for axis of rotation if this axis is null.

        It is not possible to change the axis of a running RotateTransition. If the value of axis is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        null
        See Also:
        getAxis(), setAxis(Point3D)
      • fromAngle

        public final DoubleProperty fromAngleProperty
        Specifies the start angle value for this RotateTransition.

        It is not possible to change fromAngle of a running RotateTransition. If the value of fromAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
        See Also:
        getFromAngle(), setFromAngle(double)
      • toAngle

        public final DoubleProperty toAngleProperty
        Specifies the stop angle value for this RotateTransition.

        It is not possible to change toAngle of a running RotateTransition. If the value of toAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
        See Also:
        getToAngle(), setToAngle(double)
      • byAngle

        public final DoubleProperty byAngleProperty
        Specifies the incremented stop angle value, from the start, of this RotateTransition.

        It is not possible to change byAngle of a running RotateTransition. If the value of byAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        See Also:
        getByAngle(), setByAngle(double)
    • Constructor Detail

      • RotateTransition

        public RotateTransition​(Duration duration,
                                Node node)
        The constructor of RotateTransition
        Parameters:
        duration - The duration of the RotateTransition
        node - The node which will be rotated
      • RotateTransition

        public RotateTransition​(Duration duration)
        The constructor of RotateTransition
        Parameters:
        duration - The duration of the RotateTransition
      • RotateTransition

        public RotateTransition()
        The constructor of RotateTransition
    • Method Detail

      • setNode

        public final void setNode​(Node value)
        Sets the value of the property node.
        Property description:
        The target node of this RotateTransition.

        It is not possible to change the target node of a running RotateTransition. If the value of node is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

      • getNode

        public final Node getNode()
        Gets the value of the property node.
        Property description:
        The target node of this RotateTransition.

        It is not possible to change the target node of a running RotateTransition. If the value of node is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

      • nodeProperty

        public final ObjectProperty<Node> nodeProperty()
        The target node of this RotateTransition.

        It is not possible to change the target node of a running RotateTransition. If the value of node is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        See Also:
        getNode(), setNode(Node)
      • setDuration

        public final void setDuration​(Duration value)
        Sets the value of the property duration.
        Property description:
        The duration of this RotateTransition.

        It is not possible to change the duration of a running RotateTransition. If the value of duration is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Note: While the unit of duration is a millisecond, the granularity depends on the underlying operating system and will in general be larger. For example animations on desktop systems usually run with a maximum of 60fps which gives a granularity of ~17 ms. Setting duration to value lower than Duration.ZERO will result in IllegalArgumentException.

        Default value:
        400ms
      • getDuration

        public final Duration getDuration()
        Gets the value of the property duration.
        Property description:
        The duration of this RotateTransition.

        It is not possible to change the duration of a running RotateTransition. If the value of duration is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Note: While the unit of duration is a millisecond, the granularity depends on the underlying operating system and will in general be larger. For example animations on desktop systems usually run with a maximum of 60fps which gives a granularity of ~17 ms. Setting duration to value lower than Duration.ZERO will result in IllegalArgumentException.

        Default value:
        400ms
      • durationProperty

        public final ObjectProperty<Duration> durationProperty()
        The duration of this RotateTransition.

        It is not possible to change the duration of a running RotateTransition. If the value of duration is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Note: While the unit of duration is a millisecond, the granularity depends on the underlying operating system and will in general be larger. For example animations on desktop systems usually run with a maximum of 60fps which gives a granularity of ~17 ms. Setting duration to value lower than Duration.ZERO will result in IllegalArgumentException.

        Default value:
        400ms
        See Also:
        getDuration(), setDuration(Duration)
      • setAxis

        public final void setAxis​(Point3D value)
        Sets the value of the property axis.
        Property description:
        Specifies the axis of rotation for this RotateTransition. Use node.rotationAxis for axis of rotation if this axis is null.

        It is not possible to change the axis of a running RotateTransition. If the value of axis is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        null
      • getAxis

        public final Point3D getAxis()
        Gets the value of the property axis.
        Property description:
        Specifies the axis of rotation for this RotateTransition. Use node.rotationAxis for axis of rotation if this axis is null.

        It is not possible to change the axis of a running RotateTransition. If the value of axis is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        null
      • axisProperty

        public final ObjectProperty<Point3D> axisProperty()
        Specifies the axis of rotation for this RotateTransition. Use node.rotationAxis for axis of rotation if this axis is null.

        It is not possible to change the axis of a running RotateTransition. If the value of axis is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        null
        See Also:
        getAxis(), setAxis(Point3D)
      • setFromAngle

        public final void setFromAngle​(double value)
        Sets the value of the property fromAngle.
        Property description:
        Specifies the start angle value for this RotateTransition.

        It is not possible to change fromAngle of a running RotateTransition. If the value of fromAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
      • getFromAngle

        public final double getFromAngle()
        Gets the value of the property fromAngle.
        Property description:
        Specifies the start angle value for this RotateTransition.

        It is not possible to change fromAngle of a running RotateTransition. If the value of fromAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
      • fromAngleProperty

        public final DoubleProperty fromAngleProperty()
        Specifies the start angle value for this RotateTransition.

        It is not possible to change fromAngle of a running RotateTransition. If the value of fromAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
        See Also:
        getFromAngle(), setFromAngle(double)
      • setToAngle

        public final void setToAngle​(double value)
        Sets the value of the property toAngle.
        Property description:
        Specifies the stop angle value for this RotateTransition.

        It is not possible to change toAngle of a running RotateTransition. If the value of toAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
      • getToAngle

        public final double getToAngle()
        Gets the value of the property toAngle.
        Property description:
        Specifies the stop angle value for this RotateTransition.

        It is not possible to change toAngle of a running RotateTransition. If the value of toAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
      • toAngleProperty

        public final DoubleProperty toAngleProperty()
        Specifies the stop angle value for this RotateTransition.

        It is not possible to change toAngle of a running RotateTransition. If the value of toAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        Default value:
        Double.NaN
        See Also:
        getToAngle(), setToAngle(double)
      • setByAngle

        public final void setByAngle​(double value)
        Sets the value of the property byAngle.
        Property description:
        Specifies the incremented stop angle value, from the start, of this RotateTransition.

        It is not possible to change byAngle of a running RotateTransition. If the value of byAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

      • getByAngle

        public final double getByAngle()
        Gets the value of the property byAngle.
        Property description:
        Specifies the incremented stop angle value, from the start, of this RotateTransition.

        It is not possible to change byAngle of a running RotateTransition. If the value of byAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

      • byAngleProperty

        public final DoubleProperty byAngleProperty()
        Specifies the incremented stop angle value, from the start, of this RotateTransition.

        It is not possible to change byAngle of a running RotateTransition. If the value of byAngle is changed for a running RotateTransition, the animation has to be stopped and started again to pick up the new value.

        See Also:
        getByAngle(), setByAngle(double)
      • interpolate

        protected void interpolate​(double frac)
        The method 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.
        Specified by:
        interpolate in class Transition
        Parameters:
        frac - The relative position