モジュール javafx.graphics
パッケージ javafx.animation

クラスTransition

  • 直系の既知のサブクラス:
    FadeTransition, FillTransition, ParallelTransition, PathTransition, PauseTransition, RotateTransition, ScaleTransition, SequentialTransition, StrokeTransition, TranslateTransition

    public abstract class Transition
    extends Animation
    PathTransitionRotateTransitionなど、Transitionベースのすべてのアニメーションで必要になる基本機能を含む抽象クラス。

    このクラスは、アニメーションを定義するための単純なフレームワークを備えています。 また、Animationに定義されているすべての基本機能を備えています。 Transitionを使用するには、メソッドinterpolate(double)を実装する必要があります。このメソッドは、Transitionが実行されている間、各フレームで呼び出されます。

    さらに、拡張クラスを使用して、Animation.setCycleDuration(javafx.util.Duration)により単一サイクルの期間を設定する必要があります。 この期間は、通常、期間プロパティ(durationのように)を介してユーザーによって設定されます。 ただし、ParallelTransitionおよびFadeTransitionの場合と同様に、拡張クラスによって計算することもできます。

    簡単な例を次に示します。 Textノードのtextプロパティを更新する小さいアニメーションを作成します。 空のStringから開始し、文字を1つずつ追加していき、完全なStringが設定されたときにアニメーションを終了します。

     
    
     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();
     
    導入されたバージョン:
    JavaFX 2.0
    関連項目:
    Animation
    • プロパティの詳細

      • interpolator

        public final ObjectProperty<Interpolator> interpolatorProperty
        Transitionサイクルの加速および減速のタイミングを制御します。

        これは、遷移の開始前または遷移の終了後にのみ変更できます。 実行中のTransitioninterpolatorの値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。

        interpolatorはデフォルトではInterpolator.EASE_BOTHに設定されます。

        デフォルト値:
        EASE_BOTH
        関連項目:
        getInterpolator(), setInterpolator(Interpolator)
    • コンストラクタの詳細

      • Transition

        public Transition​(double targetFramerate)
        Transitionのコンストラクタ。 このコンストラクタでは、target framerateを定義することができます。
        パラメータ:
        targetFramerate - このTransitionのカスタム・ターゲット・フレームレート
      • Transition

        public Transition()
        Transitionのコンストラクタ。
    • メソッドの詳細

      • setInterpolator

        public final void setInterpolator​(Interpolator value)
        プロパティinterpolatorの値を設定します。
        プロパティの説明:
        Transitionサイクルの加速および減速のタイミングを制御します。

        これは、遷移の開始前または遷移の終了後にのみ変更できます。 実行中のTransitioninterpolatorの値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。

        interpolatorはデフォルトではInterpolator.EASE_BOTHに設定されます。

        デフォルト値:
        EASE_BOTH
      • getInterpolator

        public final Interpolator getInterpolator()
        プロパティinterpolatorの値を取得します。
        プロパティの説明:
        Transitionサイクルの加速および減速のタイミングを制御します。

        これは、遷移の開始前または遷移の終了後にのみ変更できます。 実行中のTransitioninterpolatorの値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。

        interpolatorはデフォルトではInterpolator.EASE_BOTHに設定されます。

        デフォルト値:
        EASE_BOTH
      • interpolatorProperty

        public final ObjectProperty<Interpolator> interpolatorProperty()
        Transitionサイクルの加速および減速のタイミングを制御します。

        これは、遷移の開始前または遷移の終了後にのみ変更できます。 実行中のTransitioninterpolatorの値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。

        interpolatorはデフォルトではInterpolator.EASE_BOTHに設定されます。

        デフォルト値:
        EASE_BOTH
        関連項目:
        getInterpolator(), setInterpolator(Interpolator)
      • getCachedInterpolator

        protected Interpolator getCachedInterpolator()
        Transitionが開始されたときに設定されたInterpolatorを返します。 実行中のTransitioninterpolatorを変更しても、すぐには反映されません。 実行中のTransitionを停止してから再開するまでは、元のInterpolatorが引き続き使用されます。
        戻り値:
        このTransitionが開始されたときに設定されたInterpolator
      • getParentTargetNode

        protected Node getParentTargetNode()
        このTransitionの親階層内の最初の非nullターゲットNodeを返します。見つからない場合はnullを返します。

        親アニメーションは、子アニメーションを持つアニメーションです。 例はSequentialTransitionParallelTransitionです。 親アニメーションは、別の親アニメーションの子にすることもできます。

        このTransitionにターゲット・ノードが設定されていて親アニメーションでない場合、このメソッドは親アニメーションのみを問合せするため、呼び出し中は無視されます。

        戻り値:
        ターゲットNode
      • interpolate

        protected abstract void interpolate​(double frac)
        メソッドinterpolate()Transitionの実装を通して指定する必要があります。 Transitionが実行されている間、このメソッドは各フレームで呼び出されます。 パラメータでアニメーションの現在位置を定義します。 比率は、先頭では0.0、末尾では1.0になります。 パラメータがどのように増加するかはinterpolatorによって異なります。たとえば、interpolatorInterpolator.LINEARの場合、比率は線形的に増加します。 ユーザーがこのメソッドを直接呼び出すことはできません。
        パラメータ:
        frac - 相対位置