修飾子と型 | フィールドと説明 |
---|---|
static Interpolator |
DISCRETE
離散時間補間を行う組込み補間。
|
static Interpolator |
EASE_BOTH
イーズイン/イーズアウト動作を行う組込み補間インスタンス。
|
static Interpolator |
EASE_IN
イーズイン動作を行う組込み補間インスタンス。
|
static Interpolator |
EASE_OUT
イーズアウト動作を行う組込み補間インスタンス。
|
static Interpolator |
LINEAR
線形時間補間を行う組込み補間。
|
修飾子 | コンストラクタと説明 |
---|---|
protected |
Interpolator()
Interpolator のコンストラクタ。 |
修飾子と型 | メソッドと説明 |
---|---|
protected abstract double |
curve(double t)
[0.0..1.0]からそれ自体までのマッピング。
|
boolean |
interpolate(boolean startValue, boolean endValue, double fraction)
このメソッドに2つの
boolean 値と0.0 から1.0 までのfraction を渡すと、補間された値が返されます。 |
double |
interpolate(double startValue, double endValue, double fraction)
このメソッドに2つの
double 値と0.0 から1.0 までのfraction を渡すと、補間された値が返されます。 |
int |
interpolate(int startValue, int endValue, double fraction)
このメソッドに2つの
int 値と0.0 から1.0 までのfraction を渡すと、補間された値が返されます。 |
long |
interpolate(long startValue, long endValue, double fraction)
このメソッドに2つの
int 値と0.0 から1.0 までのfraction を渡すと、補間された値が返されます。 |
Object |
interpolate(Object startValue, Object endValue, double fraction)
このメソッドに2つの
Objects と0.0 から1.0 までのfraction を渡すと、補間された値が返されます。 |
static Interpolator |
SPLINE(double x1, double y1, double x2, double y2)
|
static Interpolator |
TANGENT(Duration t, double v)
インタンジェントとアウトタンジェントが同一のタンジェント補間を作成します。
|
static Interpolator |
TANGENT(Duration t1, double v1, Duration t2, double v2)
タンジェント補間を作成します。
|
public static final Interpolator DISCRETE
interpolate()
の戻り値は、入力fraction
が1.0の場合にのみendValue
になり、それ以外の場合はstartValue
になります。public static final Interpolator LINEAR
interpolate()
の戻り値は、startValue
+ (endValue
- startValue
) * fraction
になります。public static final Interpolator EASE_BOTH
イーズボース補間では、アニメーションを低速で開始し、速度を上げ、終了に近づくにつれて減速するというすべての処理を滑らかに行います。
実装では、加速係数と減速係数をそれぞれ0.2として、SMIL 3.0に定義されたイージングのアルゴリズムを使用しています。
public static final Interpolator EASE_IN
イーズイン補間では、アニメーションを低速で開始し、滑らかに速度を上げます。
実装では、加速係数を0.2として、SMIL 3.0に定義されたイージングのアルゴリズムを使用しています。
public static final Interpolator EASE_OUT
イーズアウト補間では、アニメーションを終了に近づくにつれて滑らかに減速します。
実装では、減速係数を0.2として、SMIL 3.0に定義されたイージングのアルゴリズムを使用しています。
public static Interpolator SPLINE(double x1, double y1, double x2, double y2)
x1
, y1
)および(x2
, y2
)によって定義されるスプライン・コントロール・ポイントを使用してcurve()
を形成するInterpolator
を作成します。スプラインのアンカー・ポイントは、(0.0
, 0.0
)および(1.0
, 1.0
)と暗黙的に定義されています。x1
- 1つ目のコントロール・ポイントのx座標y1
- 1つ目のコントロール・ポイントのy座標x2
- 2つ目のコントロール・ポイントのx座標y2
- 2つ目のコントロール・ポイントのy座標public static Interpolator TANGENT(Duration t1, double v1, Duration t2, double v2)
Timeline
内でのみ役立ちます。異なる補間を使用するKeyFrameの後に続くKeyFrame
で使用した場合、前のKeyFrameのアウトタンジェントがそのKeyFrameの値と等しいものとして処理されます。
パラメータでは、キー・フレームの前をインタンジェント、キー・フレームの後をアウトタンジェントとして、アニメーション曲線のタンジェントを定義します。各タンジェントは、現時点でのキー・フレームまでの距離とタンジェントの値のペアで指定します。
対象期間(2つ目のKeyFrameの前または1つ目のKeyFrameの後)の1/3の位置にある、指定したタンジェントによって定義された2つのコントロール・ポイントを持つベジエ曲線に従って補間が行われます。上の図を参照してください。
t1
- インタンジェントのデルタ時間(KeyFrameに対する相対値)v1
- インタンジェントの値t2
- アウトタンジェントのデルタ時間(KeyFrameに対する相対値)v2
- アウトタンジェントの値public static Interpolator TANGENT(Duration t, double v)
Timeline
の最初と最後のキー・フレームで特に役立ちます。t
- タンジェントのデルタ時間v
- タンジェントの値TANGENT(Duration, double, Duration, double)
public Object interpolate(Object startValue, Object endValue, double fraction)
Objects
と0.0
から1.0
までのfraction
を渡すと、補間された値が返されます。
両方のObjects
がNumber
を実装している場合、それらの値が補間されます。startValue
がInterpolatable
を実装している場合、interpolate()
に定義されている計算が使用されます。これらの条件のいずれも満たさない場合、離散補間が使用されます。つまり、endValue
はfraction
が1.0
の場合にのみ返され、それ以外の場合はstartValue
が返されます。
補間された値を計算する前に、curve()
に定義された関数に従って比率が変更されます。
startValue
- 開始値endValue
- 終了値fraction
- 0.0から1.0までの値public boolean interpolate(boolean startValue, boolean endValue, double fraction)
boolean
値と0.0
から1.0
までのfraction
を渡すと、補間された値が返されます。
補間された値を計算する前に、curve()
に定義された関数に従って比率が変更されます。
startValue
- 1つ目のデータ・ポイントendValue
- 2つ目のデータ・ポイントfraction
- [0.0...1.0]
の比率public double interpolate(double startValue, double endValue, double fraction)
startValue
- 1つ目のデータ・ポイントendValue
- 2つ目のデータ・ポイントfraction
- [0.0...1.0]
の比率public int interpolate(int startValue, int endValue, double fraction)
startValue
- 1つ目のデータ・ポイントendValue
- 2つ目のデータ・ポイントfraction
- [0.0...1.0]
の比率public long interpolate(long startValue, long endValue, double fraction)
startValue
- 1つ目のデータ・ポイントendValue
- 2つ目のデータ・ポイントfraction
- [0.0...1.0]
の比率protected abstract double curve(double t)
t
- 時間。ただし、範囲[0.0..1.0]に正規化されます。0.0は現在の間隔の開始を示し、1.0は現在の間隔の終了を示します。通常は、単調に増加する関数です。Copyright (c) 2008, 2015, Oracle and/or its affiliates. All rights reserved.