public abstract class Animation extends Object
Animation
は、JavaFXランタイムで使用されるすべてのアニメーションのコア機能を提供します。
アニメーションは、cycleCount
を設定することによってループで実行できます。ループしている間、アニメーションが往復実行されるようにするには、autoReverse
フラグを設定します。
Animation
を再生するには、play()
またはplayFromStart()
を呼び出します。Animation
は、rate
で指定する方向および速度で進行し、その期間が経過すると停止します。期間を無限(cycleCount
= INDEFINITE
)にしたAnimation
は、stop()
メソッドを明示的に呼び出すまで繰り返し実行されます。このメソッドを呼び出すと、実行中のAnimation
が停止され、再生ヘッドが初期位置にリセットされます。
Animation
を一時停止するには、pause()
を呼び出します。その後、play()
を呼び出すと、一時停止した場所からAnimation
が再開されます。
Animation
が実行中かどうかに関係なく、再生ヘッドの位置を任意に指定できます。Animation
が実行中の場合は、再生ヘッドは指定の位置に即座にジャンプし、新しい位置から再生が続行されます。Animation
が実行中でない場合は、次回play()
を呼び出したときに、指定の位置からAnimation
が開始されます。
rate
の値を反転させると、再生方向が切り替わります。
Timeline
, Transition
型 | プロパティと説明 |
---|---|
BooleanProperty |
autoReverse
この
Animation で方向を交互に繰り返し反転させるかどうかを定義します。 |
ReadOnlyDoubleProperty |
currentRate
Animation を再生している現在の方向/速度を示す読取り専用変数。 |
ReadOnlyObjectProperty<Duration> |
currentTime
Animation の再生ヘッド位置を定義します。 |
IntegerProperty |
cycleCount
このアニメーションのサイクル数を定義します。
|
ReadOnlyObjectProperty<Duration> |
cycleDuration
この
Animation の1つのサイクルの期間を示す読取り専用変数: 時間0からAnimationの最後までの再生時間(デフォルトのrate は1.0)。 |
ObjectProperty<Duration> |
delay
アニメーションの開始を遅延します。
|
ObjectProperty<EventHandler<ActionEvent>> |
onFinished
この
Animation の最後に実行されるアクション。 |
DoubleProperty |
rate
Animation を再生する方向/速度を定義します。 |
ReadOnlyObjectProperty<Animation.Status> |
status
Animation のステータス。 |
ReadOnlyObjectProperty<Duration> |
totalDuration
繰返しを含むこの
Animation の合計時間を示す読取り専用変数。 |
修飾子と型 | クラスと説明 |
---|---|
static class |
Animation.Status
status の候補となる状態。 |
修飾子と型 | フィールドと説明 |
---|---|
static int |
INDEFINITE
stop() メソッドを呼び出すまで無限に繰り返すアニメーションを指定するために使用します。 |
修飾子 | コンストラクタと説明 |
---|---|
protected |
Animation()
Animation のコンストラクタ。 |
protected |
Animation(double targetFramerate)
Animation のコンストラクタ。 |
修飾子と型 | メソッドと説明 |
---|---|
BooleanProperty |
autoReverseProperty()
この
Animation で方向を交互に繰り返し反転させるかどうかを定義します。 |
ReadOnlyDoubleProperty |
currentRateProperty()
Animation を再生している現在の方向/速度を示す読取り専用変数。 |
ReadOnlyObjectProperty<Duration> |
currentTimeProperty()
Animation の再生ヘッド位置を定義します。 |
IntegerProperty |
cycleCountProperty()
このアニメーションのサイクル数を定義します。
|
ReadOnlyObjectProperty<Duration> |
cycleDurationProperty()
この
Animation の1つのサイクルの期間を示す読取り専用変数: 時間0からAnimationの最後までの再生時間(デフォルトのrate は1.0)。 |
ObjectProperty<Duration> |
delayProperty()
アニメーションの開始を遅延します。
|
ObservableMap<String,Duration> |
getCuePoints()
キュー・ポイントを使用して、
Animation の重要な位置をマークできます。 |
double |
getCurrentRate()
プロパティcurrentRateの値を取得します。
|
Duration |
getCurrentTime()
プロパティcurrentTimeの値を取得します。
|
int |
getCycleCount()
プロパティcycleCountの値を取得します。
|
Duration |
getCycleDuration()
プロパティcycleDurationの値を取得します。
|
Duration |
getDelay()
プロパティdelayの値を取得します。
|
EventHandler<ActionEvent> |
getOnFinished()
プロパティonFinishedの値を取得します。
|
double |
getRate()
プロパティrateの値を取得します。
|
Animation.Status |
getStatus()
プロパティstatusの値を取得します。
|
double |
getTargetFramerate()
ターゲット・フレームレートは、この
Animation が実行される最大フレームレート(フレーム/秒)です。 |
Duration |
getTotalDuration()
プロパティtotalDurationの値を取得します。
|
boolean |
isAutoReverse()
プロパティautoReverseの値を取得します。
|
void |
jumpTo(Duration time)
この
Animation 内の指定の位置にジャンプします。 |
void |
jumpTo(String cuePoint)
この
Animation 内の事前定義済の位置にジャンプします。 |
ObjectProperty<EventHandler<ActionEvent>> |
onFinishedProperty()
この
Animation の最後に実行されるアクション。 |
void |
pause()
アニメーションを一時停止します。
|
void |
play()
現在の位置から
rate で指定する方向にAnimation を再生します。 |
void |
playFrom(Duration time)
この
Animation を特定の位置から再生するコンビニエンス・メソッド。 |
void |
playFrom(String cuePoint)
この
Animation を事前定義済の位置から再生するコンビニエンス・メソッド。 |
void |
playFromStart()
初期位置から順方向に
Animation を再生します。 |
DoubleProperty |
rateProperty()
Animation を再生する方向/速度を定義します。 |
void |
setAutoReverse(boolean value)
プロパティautoReverseの値を設定します。
|
void |
setCycleCount(int value)
プロパティcycleCountの値を設定します。
|
protected void |
setCycleDuration(Duration value)
プロパティcycleDurationの値を設定します。
|
void |
setDelay(Duration value)
プロパティdelayの値を設定します。
|
void |
setOnFinished(EventHandler<ActionEvent> value)
プロパティonFinishedの値を設定します。
|
void |
setRate(double value)
プロパティrateの値を設定します。
|
protected void |
setStatus(Animation.Status value)
プロパティstatusの値を設定します。
|
ReadOnlyObjectProperty<Animation.Status> |
statusProperty()
Animation のステータス。 |
void |
stop()
アニメーションを停止し、再生ヘッドを初期位置にリセットします。
|
ReadOnlyObjectProperty<Duration> |
totalDurationProperty()
繰返しを含むこの
Animation の合計時間を示す読取り専用変数。 |
public final DoubleProperty rateProperty
Animation
を再生する方向/速度を定義します。
rate
の絶対値はAnimation
の再生速度を示し、rate
の記号は方向を示します。rate
の値が正の場合は順方向に再生し、値が負の場合は逆方向に再生し、0.0
の場合はAnimation
の実行を停止します。
たとえば、速度1.0
は標準再生、2.0
は2倍速再生、-1.0
は逆方向再生になります。
実行中のAnimation
の速度を反転すると、Animation
の方向が逆になり、すでに経過したAnimation
部分が逆方向に再生されます。
getRate()
, setRate(double)
public final ReadOnlyDoubleProperty currentRateProperty
Animation
を再生している現在の方向/速度を示す読取り専用変数。
currentRate
はrate
と必ずしも等しくなりません。アニメーションが一時停止または停止されている場合、currentRate
は0.0
に設定されます。また、autoReverse
がtrue
の場合、currentRate
は反転サイクル中は逆方向を指します。
getCurrentRate()
public final ReadOnlyObjectProperty<Duration> cycleDurationProperty
Animation
の1つのサイクルの期間を示す読取り専用変数: 時間0からAnimationの最後までの再生時間(デフォルトのrate
は1.0)。getCycleDuration()
, setCycleDuration(Duration)
public final ReadOnlyObjectProperty<Duration> totalDurationProperty
Animation
の合計時間を示す読取り専用変数。Animation
のcycleCount
をAnimation.INDEFINITE
にした場合、totalDuration
はDuration.INDEFINITE
になります。
これはcycleDuration * cycleCountに設定されます。
getTotalDuration()
public final ReadOnlyObjectProperty<Duration> currentTimeProperty
Animation
の再生ヘッド位置を定義します。getCurrentTime()
public final ObjectProperty<Duration> delayProperty
IllegalArgumentException
が発生します。getDelay()
, setDelay(Duration)
public final IntegerProperty cycleCountProperty
cycleCount
をINDEFINITE
に設定できますが、それ以外の場合は0より大きくする必要があります。
実行中のAnimation
のcycleCount
は変更できません。実行中のAnimation
のcycleCount
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。
getCycleCount()
, setCycleCount(int)
public final BooleanProperty autoReverseProperty
Animation
で方向を交互に繰り返し反転させるかどうかを定義します。true
の場合、Animation
は1回目のサイクルでは順方向に進行し、2回目のサイクルでは逆方向に進行します(それ以降も同様です)。それ以外の場合、ループの各サイクルで、アニメーションが先頭から順方向に進行します。実行中のAnimation
のautoReverse
フラグは変更できません。実行中のAnimation
のautoReverse
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。isAutoReverse()
, setAutoReverse(boolean)
public final ReadOnlyObjectProperty<Animation.Status> statusProperty
Animation
のステータス。Animation
の状態は、Animation.Status.STOPPED
、Animation.Status.PAUSED
またはAnimation.Status.RUNNING
のいずれかになります。getStatus()
, setStatus(Status)
public final ObjectProperty<EventHandler<ActionEvent>> onFinishedProperty
Animation
の最後に実行されるアクション。getOnFinished()
, setOnFinished(EventHandler)
public static final int INDEFINITE
stop()
メソッドを呼び出すまで無限に繰り返すアニメーションを指定するために使用します。protected Animation(double targetFramerate)
Animation
のコンストラクタ。このコンストラクタではターゲット・フレームレートを定義できます。targetFramerate
- このAnimation
のカスタム・ターゲット・フレームレートgetTargetFramerate()
protected Animation()
Animation
のコンストラクタ。public final void setRate(double value)
Animation
を再生する方向/速度を定義します。
rate
の絶対値はAnimation
の再生速度を示し、rate
の記号は方向を示します。rate
の値が正の場合は順方向に再生し、値が負の場合は逆方向に再生し、0.0
の場合はAnimation
の実行を停止します。
たとえば、速度1.0
は標準再生、2.0
は2倍速再生、-1.0
は逆方向再生になります。
実行中のAnimation
の速度を反転すると、Animation
の方向が逆になり、すでに経過したAnimation
部分が逆方向に再生されます。
public final double getRate()
Animation
を再生する方向/速度を定義します。
rate
の絶対値はAnimation
の再生速度を示し、rate
の記号は方向を示します。rate
の値が正の場合は順方向に再生し、値が負の場合は逆方向に再生し、0.0
の場合はAnimation
の実行を停止します。
たとえば、速度1.0
は標準再生、2.0
は2倍速再生、-1.0
は逆方向再生になります。
実行中のAnimation
の速度を反転すると、Animation
の方向が逆になり、すでに経過したAnimation
部分が逆方向に再生されます。
public final DoubleProperty rateProperty()
Animation
を再生する方向/速度を定義します。
rate
の絶対値はAnimation
の再生速度を示し、rate
の記号は方向を示します。rate
の値が正の場合は順方向に再生し、値が負の場合は逆方向に再生し、0.0
の場合はAnimation
の実行を停止します。
たとえば、速度1.0
は標準再生、2.0
は2倍速再生、-1.0
は逆方向再生になります。
実行中のAnimation
の速度を反転すると、Animation
の方向が逆になり、すでに経過したAnimation
部分が逆方向に再生されます。
getRate()
, setRate(double)
public final double getCurrentRate()
Animation
を再生している現在の方向/速度を示す読取り専用変数。
currentRate
はrate
と必ずしも等しくなりません。アニメーションが一時停止または停止されている場合、currentRate
は0.0
に設定されます。また、autoReverse
がtrue
の場合、currentRate
は反転サイクル中は逆方向を指します。
public final ReadOnlyDoubleProperty currentRateProperty()
Animation
を再生している現在の方向/速度を示す読取り専用変数。
currentRate
はrate
と必ずしも等しくなりません。アニメーションが一時停止または停止されている場合、currentRate
は0.0
に設定されます。また、autoReverse
がtrue
の場合、currentRate
は反転サイクル中は逆方向を指します。
getCurrentRate()
protected final void setCycleDuration(Duration value)
Animation
の1つのサイクルの期間を示す読取り専用変数: 時間0からAnimationの最後までの再生時間(デフォルトのrate
は1.0)。public final Duration getCycleDuration()
Animation
の1つのサイクルの期間を示す読取り専用変数: 時間0からAnimationの最後までの再生時間(デフォルトのrate
は1.0)。public final ReadOnlyObjectProperty<Duration> cycleDurationProperty()
Animation
の1つのサイクルの期間を示す読取り専用変数: 時間0からAnimationの最後までの再生時間(デフォルトのrate
は1.0)。getCycleDuration()
, setCycleDuration(Duration)
public final Duration getTotalDuration()
Animation
の合計時間を示す読取り専用変数。Animation
のcycleCount
をAnimation.INDEFINITE
にした場合、totalDuration
はDuration.INDEFINITE
になります。
これはcycleDuration * cycleCountに設定されます。
public final ReadOnlyObjectProperty<Duration> totalDurationProperty()
Animation
の合計時間を示す読取り専用変数。Animation
のcycleCount
をAnimation.INDEFINITE
にした場合、totalDuration
はDuration.INDEFINITE
になります。
これはcycleDuration * cycleCountに設定されます。
getTotalDuration()
public final Duration getCurrentTime()
Animation
の再生ヘッド位置を定義します。public final ReadOnlyObjectProperty<Duration> currentTimeProperty()
Animation
の再生ヘッド位置を定義します。getCurrentTime()
public final void setDelay(Duration value)
IllegalArgumentException
が発生します。public final Duration getDelay()
IllegalArgumentException
が発生します。public final ObjectProperty<Duration> delayProperty()
IllegalArgumentException
が発生します。getDelay()
, setDelay(Duration)
public final void setCycleCount(int value)
cycleCount
をINDEFINITE
に設定できますが、それ以外の場合は0より大きくする必要があります。
実行中のAnimation
のcycleCount
は変更できません。実行中のAnimation
のcycleCount
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。
public final int getCycleCount()
cycleCount
をINDEFINITE
に設定できますが、それ以外の場合は0より大きくする必要があります。
実行中のAnimation
のcycleCount
は変更できません。実行中のAnimation
のcycleCount
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。
public final IntegerProperty cycleCountProperty()
cycleCount
をINDEFINITE
に設定できますが、それ以外の場合は0より大きくする必要があります。
実行中のAnimation
のcycleCount
は変更できません。実行中のAnimation
のcycleCount
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。
getCycleCount()
, setCycleCount(int)
public final void setAutoReverse(boolean value)
Animation
で方向を交互に繰り返し反転させるかどうかを定義します。true
の場合、Animation
は1回目のサイクルでは順方向に進行し、2回目のサイクルでは逆方向に進行します(それ以降も同様です)。それ以外の場合、ループの各サイクルで、アニメーションが先頭から順方向に進行します。実行中のAnimation
のautoReverse
フラグは変更できません。実行中のAnimation
のautoReverse
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。public final boolean isAutoReverse()
Animation
で方向を交互に繰り返し反転させるかどうかを定義します。true
の場合、Animation
は1回目のサイクルでは順方向に進行し、2回目のサイクルでは逆方向に進行します(それ以降も同様です)。それ以外の場合、ループの各サイクルで、アニメーションが先頭から順方向に進行します。実行中のAnimation
のautoReverse
フラグは変更できません。実行中のAnimation
のautoReverse
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。public final BooleanProperty autoReverseProperty()
Animation
で方向を交互に繰り返し反転させるかどうかを定義します。true
の場合、Animation
は1回目のサイクルでは順方向に進行し、2回目のサイクルでは逆方向に進行します(それ以降も同様です)。それ以外の場合、ループの各サイクルで、アニメーションが先頭から順方向に進行します。実行中のAnimation
のautoReverse
フラグは変更できません。実行中のAnimation
のautoReverse
の値が変更された場合、新しい値を反映するには、アニメーションを停止し、再度開始する必要があります。isAutoReverse()
, setAutoReverse(boolean)
protected final void setStatus(Animation.Status value)
Animation
のステータス。Animation
の状態は、Animation.Status.STOPPED
、Animation.Status.PAUSED
またはAnimation.Status.RUNNING
のいずれかになります。public final Animation.Status getStatus()
Animation
のステータス。Animation
の状態は、Animation.Status.STOPPED
、Animation.Status.PAUSED
またはAnimation.Status.RUNNING
のいずれかになります。public final ReadOnlyObjectProperty<Animation.Status> statusProperty()
Animation
のステータス。Animation
の状態は、Animation.Status.STOPPED
、Animation.Status.PAUSED
またはAnimation.Status.RUNNING
のいずれかになります。getStatus()
, setStatus(Status)
public final double getTargetFramerate()
Animation
が実行される最大フレームレート(フレーム/秒)です。特に複雑なAnimations
によってシステム・リソースが過剰消費されないようにする場合などに使用します。デフォルトでは、Animation
のフレームレートは明示的には制限されていません。つまり、Animation
は、基礎となるプラットフォームに最も適したフレームレートで実行されます。public final void setOnFinished(EventHandler<ActionEvent> value)
Animation
の最後に実行されるアクション。public final EventHandler<ActionEvent> getOnFinished()
Animation
の最後に実行されるアクション。public final ObjectProperty<EventHandler<ActionEvent>> onFinishedProperty()
Animation
の最後に実行されるアクション。getOnFinished()
, setOnFinished(EventHandler)
public final ObservableMap<String,Duration> getCuePoints()
Animation
の重要な位置をマークできます。定義済のキュー・ポイントをjumpTo()
およびplayFrom()
の引数として使用すると、関連付けられた位置まですばやく移動できます。
すべてのAnimation
に"start"
と"end"
の2つのキュー・ポイントが事前に定義されています(それぞれAnimation
の先頭と末尾を表します)。事前定義済のキュー・ポイントはマップには表示されず、オーバーライドを試みても効果はありません。
Animation
のキュー・ポイントを定義するもう1つのオプションは、KeyFrame
のKeyFrame.name
プロパティを設定することです。
ObservableMap
public void jumpTo(Duration time)
Animation
内の指定の位置にジャンプします。指定した時間がDuration.ZERO
よりも前である場合は、アニメーションの先頭までジャンプします。指定した時間がこのAnimation
の期間よりも後である場合は、末尾までジャンプします。time
- 新しい位置NullPointerException
- time
がnull
の場合IllegalArgumentException
- time
がDuration.UNKNOWN
の場合IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)public void jumpTo(String cuePoint)
Animation
内の事前定義済の位置にジャンプします。キュー・ポイントのエントリを探し、見つかった場合は関連付けられた位置までジャンプします。
キュー・ポイントがこのAnimation
の末尾よりも後である場合は、jumpTo
を呼び出すと、末尾までジャンプします。キュー・ポイントのDuration
が負である場合は、先頭までジャンプします。キュー・ポイントの値がDuration.UNKNOWN
である場合、jumpTo
を呼び出しても効果はありません。
このAnimation
の先頭と末尾を表す2つのキュー・ポイント"start"
および"end"
が事前に定義されています。
cuePoint
- キュー・ポイントの名前NullPointerException
- cuePoint
がnull
の場合IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)getCuePoints()
public void playFrom(String cuePoint)
Animation
を事前定義済の位置から再生するコンビニエンス・メソッド。位置はキュー・ポイントに事前に定義されている必要があります。このメソッドを呼び出すことは、次と同等です。
animation.jumpTo(cuePoint);
animation.play();
playFromStart()
とは異なり、このメソッドを呼び出してもこのAnimation
の再生方向は変わりません。cuePoint
- キュー・ポイントの名前NullPointerException
- cuePoint
がnull
の場合IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)getCuePoints()
public void playFrom(Duration time)
Animation
を特定の位置から再生するコンビニエンス・メソッド。このメソッドを呼び出すことは、次と同等です。
animation.jumpTo(time);
animation.play();
playFromStart()
とは異なり、このメソッドを呼び出してもこのAnimation
の再生方向は変わりません。time
- 再生を開始する位置NullPointerException
- time
がnull
の場合IllegalArgumentException
- time
がDuration.UNKNOWN
の場合IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)public void play()
rate
で指定する方向にAnimation
を再生します。Animation
が実行中の場合、効果はありません。
rate
> 0 (順方向再生)の場合にAnimation
がすでに末尾位置にあると、1回目のサイクルは再生されず、すでに終了したものとみなされます。逆方向再生(rate
< 0)サイクルにおいてAnimation
がすでに先頭位置にある場合にも、このことが該当します。ただし、cycleCount
> 1のAnimation
の場合、後続のサイクルは通常どおり再生されます。
Animation
が末尾に到達すると、そのAnimation
は停止され、再生ヘッドは末尾に残ります。
Animation
を末尾から逆方向に再生するには、次のようにします。
animation.setRate(negative rate);
animation.jumpTo(overall duration of animation);
animation.play();
注意:
play()
の呼出しは非同期であり、Animation
は即座に開始されるとはかぎりません。 IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)public void playFromStart()
Animation
を再生します。
これは次と同等です。
animation.stop();
animation.setRate = setRate(Math.abs(animation.getRate())); animation.jumpTo(Duration.ZERO);
animation.play();
注意:
playFromStart()
の呼出しは非同期であり、Animation
は即座に開始されるとはかぎりません。 IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)public void stop()
注意:
stop()
の呼出しは非同期であり、Animation
は即座に停止されるとはかぎりません。 IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)public void pause()
注意:
pause()
の呼出しは非同期であり、Animation
は即座に一時停止されるとはかぎりません。 IllegalStateException
- 別のアニメーションに埋め込まれている場合(SequentialTransition
やParallelTransition
など)Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.