Win32 API 日本語リファレンス
ホームUI.Animation › IUIAnimationTransitionLibrary2

IUIAnimationTransitionLibrary2

COM
IID03cfae53-9580-4ee3-b363-2ece51b4af6a継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

指定された次元に対する標準的な遷移(トランジション)のライブラリを定義します。

解説(Remarks)

Windows Animation には、ストーリーボードを通じて変数に適用できる一般的な遷移のライブラリが用意されています。遷移を指定するためのパラメーターは、遷移の種類によって異なります。遷移によっては、継続時間が明示的なパラメーターとなるものもあれば、遷移開始時の速度や加速度など、他のパラメーターによって継続時間が決定されるものもあります。不連続なジャンプが必要な場合は、遷移の初期値や初期速度を上書きできます。また、遷移をストーリーボードに追加した後で継続時間を照会できます。

遷移ライブラリでは指定できない効果がアプリケーションで必要な場合、開発者はカスタム遷移を実装できます。カスタム遷移は、まず遷移用の補間器関数を実装し、次にファクトリオブジェクトを使用して補間器から遷移を生成することで作成します。補間器は IUIAnimationInterpolator2 インターフェイスを実装する必要があります。遷移ファクトリオブジェクトの実装は UIAnimationTransitionFactory2 オブジェクトによって提供されます。

メソッド 19

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT CreateInstantaneousTransition(DOUBLE finalValue, IUIAnimationTransition2** transition)

瞬間的なスカラー遷移を作成します。

finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
transitionIUIAnimationTransition2**out新しい瞬間遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

瞬間遷移では、 アニメーション変数の値が現在の値から指定された最終値へ瞬時に変化します。この遷移の継続時間は常にゼロです。

次の図は、瞬間遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing an instantaneous transition
vtbl 4 HRESULT CreateInstantaneousVectorTransition(DOUBLE* finalValue, DWORD cDimension, IUIAnimationTransition2** transition)

指定された各次元に対して瞬間的なベクトル遷移を作成します。

finalValueDOUBLE*in遷移の終了時におけるアニメーション変数の値を格納したベクトル(サイズは cDimension)。
cDimensionDWORDin遷移を適用する次元数。このパラメーターは finalValue に列挙される値の個数を指定します。
transitionIUIAnimationTransition2**out新しい瞬間遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

瞬間遷移では、 アニメーション変数の値が現在の値から指定された最終値へ瞬時に変化します。この遷移の継続時間は常にゼロです。

次の図は、瞬間遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing an instantaneous transition
vtbl 5 HRESULT CreateConstantTransition(DOUBLE duration, IUIAnimationTransition2** transition)

一定値のスカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
transitionIUIAnimationTransition2**out新しい一定値遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

一定値遷移では、アニメーション変数の値は遷移の継続時間を通じて初期値のまま保持されます。

次の図は、一定継続時間の遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a constant-duration transition
vtbl 6 HRESULT CreateDiscreteTransition(DOUBLE delay, DOUBLE finalValue, DOUBLE hold, IUIAnimationTransition2** transition)

離散的なスカラー遷移を作成します。

delayDOUBLEin最終値への瞬時の切り替えを遅延させる時間。
finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
holdDOUBLEin変数を最終値に保持する時間。
transitionIUIAnimationTransition2**out新しい離散遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

離散遷移では、アニメーション変数は指定された遅延時間の間は初期値のまま保持され、その後瞬時に指定された最終値へ切り替わり、指定された保持時間の間その値を維持します。

次の図は、離散遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a discrete transition
vtbl 7 HRESULT CreateDiscreteVectorTransition(DOUBLE delay, DOUBLE* finalValue, DWORD cDimension, DOUBLE hold, IUIAnimationTransition2** transition)

指定された各次元に対して離散的なベクトル遷移を作成します。

delayDOUBLEin最終値への瞬時の切り替えを遅延させる時間。
finalValueDOUBLE*in遷移の終了時におけるアニメーション変数の最終値を格納したベクトル(サイズは cDimension)。
cDimensionDWORDin遷移を適用する次元数。このパラメーターは finalValue に列挙される値の個数を指定します。
holdDOUBLEin変数を最終値に保持する時間。
transitionIUIAnimationTransition2**out新しい離散遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

離散遷移では、アニメーション変数は指定された遅延時間の間は初期値のまま保持され、その後瞬時に指定された最終値へ切り替わり、指定された保持時間の間その値を維持します。

次の図は、離散遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a discrete transition
vtbl 8 HRESULT CreateLinearTransition(DOUBLE duration, DOUBLE finalValue, IUIAnimationTransition2** transition)

線形のスカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
transitionIUIAnimationTransition2**out新しい線形遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

線形遷移では、アニメーション変数の値は初期値から指定された最終値へ線形に変化します。

次の図は、線形遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a linear transition
vtbl 9 HRESULT CreateLinearVectorTransition(DOUBLE duration, DOUBLE* finalValue, DWORD cDimension, IUIAnimationTransition2** transition)

指定された次元に対して線形のベクトル遷移を作成します。

durationDOUBLEin遷移の継続時間。
finalValueDOUBLE*in遷移の終了時におけるアニメーション変数の最終値を格納したベクトル(サイズは cDimension)。
cDimensionDWORDin遷移を適用する次元数。このパラメーターは finalValue に列挙される値の個数を指定します。
transitionIUIAnimationTransition2**out新しい線形遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

線形遷移では、アニメーション変数の値は初期値から指定された最終値へ線形に変化します。

次の図は、線形遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a linear transition
vtbl 10 HRESULT CreateLinearTransitionFromSpeed(DOUBLE speed, DOUBLE finalValue, IUIAnimationTransition2** transition)

線形速度のスカラー遷移を作成します。

speedDOUBLEin速度の絶対値(単位/秒)。
finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
transitionIUIAnimationTransition2**out新しい線形速度遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

線形速度遷移では、アニメーション変数の値は指定された速度で変化します。遷移の継続時間は、初期値と指定された最終値との差によって決定されます。

次の図は、線形速度遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing the linear transition from speed
vtbl 11 HRESULT CreateLinearVectorTransitionFromSpeed(DOUBLE speed, DOUBLE* finalValue, DWORD cDimension, IUIAnimationTransition2** transition)

指定された次元に対して線形速度のベクトル遷移を作成します。

speedDOUBLEin速度の絶対値(単位/秒)。
finalValueDOUBLE*in遷移の終了時におけるアニメーション変数の最終値を格納したベクトル(サイズは cDimension)。
cDimensionDWORDin遷移を適用する次元数。このパラメーターは finalValue に列挙される値の個数を指定します。
transitionIUIAnimationTransition2**out新しい線形速度遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

線形速度遷移では、アニメーション変数の値は指定された速度で変化します。遷移の継続時間は、初期値と指定された最終値との差によって決定されます。

次の図は、線形速度遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing the linear transition from speed
vtbl 12 HRESULT CreateSinusoidalTransitionFromVelocity(DOUBLE duration, DOUBLE period, IUIAnimationTransition2** transition)

初期速度によって振幅が決定される正弦波スカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
periodDOUBLEin正弦波の振動周期。
transitionIUIAnimationTransition2**out新しい正弦波(速度指定)遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

正弦波遷移では、アニメーション変数の値は遷移の全継続時間を通じて初期値の周りで振動します。振動の振幅は、遷移開始時の速度によって決定されます。

次の図は、正弦波(速度指定)遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a sinusoidal-velocity transition
vtbl 13 HRESULT CreateSinusoidalTransitionFromRange(DOUBLE duration, DOUBLE minimumValue, DOUBLE maximumValue, DOUBLE period, UI_ANIMATION_SLOPE slope, IUIAnimationTransition2** transition)

指定された振動範囲を持つ正弦波(範囲指定)スカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
minimumValueDOUBLEin正弦波の谷におけるアニメーション変数の値。
maximumValueDOUBLEin正弦波の山におけるアニメーション変数の値。
periodDOUBLEin正弦波の振動周期。
slopeUI_ANIMATION_SLOPEin遷移開始時の傾き。
transitionIUIAnimationTransition2**out新しい正弦波(範囲指定)遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

正弦波(範囲指定)遷移では、アニメーション変数の値は遷移の全継続時間を通じて指定された最小値と最大値の間で変動します。slope パラメーターは、他のパラメーターで指定される 2 つの可能な正弦波を区別するために使用されます。

次の図は、正弦波(範囲指定)遷移におけるアニメーション変数の値の時間変化を示しています。UI_ANIMATION_SLOPE_INCREASING 列挙値を渡すと図中の実線のような波形になり、UI_ANIMATION_SLOPE_DECREASING 値を渡すと破線のような波形になります。

Diagram showing a sinusoidal-range transition
vtbl 14 HRESULT CreateAccelerateDecelerateTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE accelerationRatio, DOUBLE decelerationRatio, IUIAnimationTransition2** transition)

加速・減速スカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
accelerationRatioDOUBLEinduration のうち加速に費やす時間の割合(0 ~ 1)。
decelerationRatioDOUBLEinduration のうち減速に費やす時間の割合(0 ~ 1)。
transitionIUIAnimationTransition2**out新しい加速・減速遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

加速・減速遷移では、アニメーション変数は 遷移の継続時間を通じて加速した後に減速し、指定された値で終了します。加速の割合と減速の割合を個別に指定することで、変数が加速・減速する速さをそれぞれ制御できます。

初期速度がゼロの場合、加速の割合は変数が加速に費やす継続時間の割合となります。減速の割合も同様です。初期速度がゼロ以外の場合、この値は速度がゼロに達してから遷移が終了するまでの時間に対する割合となります。加速の割合と減速の割合の合計は最大で 1.0 にする必要があります。

次の図は、加速・減速遷移において初期速度が異なるアニメーション変数の値の変化を示しています。

Diagram showing accelerate-decelerate transitions
メモ 右側の図の d' は、速度がゼロに達してから遷移が終了するまでの時間を示しています。
vtbl 15 HRESULT CreateReversalTransition(DOUBLE duration, IUIAnimationTransition2** transition)

反転スカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
transitionIUIAnimationTransition2**out新しい反転遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

反転遷移は、指定された継続時間の間に滑らかに方向を反転させます。最終値は初期値と同じになり、最終速度は初期速度の符号を反転した値になります。次の図はこのような反転遷移を示しています。

Diagram showing a reversal transition
vtbl 16 HRESULT CreateCubicTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE finalVelocity, IUIAnimationTransition2** transition)

3 次のスカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
finalVelocityDOUBLEin遷移の終了時における変数の速度。
transitionIUIAnimationTransition2**out新しい 3 次遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

3 次遷移では、アニメーション変数の値は遷移の duration の間に初期値から finalValue へ変化し、finalVelocity で終了します。

次の図は、3 次遷移におけるアニメーション変数への時間的な影響を示しています。

Diagram showing a cubic transition
vtbl 17 HRESULT CreateCubicVectorTransition(DOUBLE duration, DOUBLE* finalValue, DOUBLE* finalVelocity, DWORD cDimension, IUIAnimationTransition2** transition)

指定された各次元に対して 3 次のベクトル遷移を作成します。

durationDOUBLEin遷移の継続時間。
finalValueDOUBLE*in遷移の終了時におけるアニメーション変数の最終値を格納したベクトル(サイズは cDimension)。
finalVelocityDOUBLE*in遷移の終了時におけるアニメーション変数の最終速度(単位/秒)を格納したベクトル(サイズは cDimension)。
cDimensionDWORDin遷移を適用する次元数。このパラメーターは finalValue および finalVelocity に列挙される値の個数を指定します。
transitionIUIAnimationTransition2**out新しい 3 次遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

3 次遷移では、アニメーション変数の値は遷移の duration の間に初期値から finalValue へ変化し、finalVelocity で終了します。

次の図は、3 次遷移におけるアニメーション変数への時間的な影響を示しています。

Diagram showing a cubic transition
vtbl 18 HRESULT CreateSmoothStopTransition(DOUBLE maximumDuration, DOUBLE finalValue, IUIAnimationTransition2** transition)

スムーズストップのスカラー遷移を作成します。

maximumDurationDOUBLEin遷移の最大継続時間。
finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
transitionIUIAnimationTransition2**out新しいスムーズストップ遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

スムーズストップ遷移は、指定された最終値に近づくにつれて減速し、速度ゼロで最終値に到達します。遷移の継続時間は、初期速度、初期値と最終値の差、および指定された最大継続時間によって決定されます。単一の放物線弧から成る解が存在しない場合、このメソッドは 3 次遷移を作成します。

次の図は、スムーズストップ遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a smooth stop transition
vtbl 19 HRESULT CreateParabolicTransitionFromAcceleration(DOUBLE finalValue, DOUBLE finalVelocity, DOUBLE acceleration, IUIAnimationTransition2** transition)

放物線加速のスカラー遷移を作成します。

finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
finalVelocityDOUBLEin遷移の終了時における速度(単位/秒)。
accelerationDOUBLEin遷移中の加速度(単位/秒²)。
transitionIUIAnimationTransition2**out新しい放物線加速遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

放物線加速遷移では、アニメーション変数の値は初期値から最終値へ変化し、指定された速度で終了します。加速度を指定することで、変数が最終値に到達する速さを制御できます。

次の図は、放物線加速遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a parabolic-acceleration transition
vtbl 20 HRESULT CreateCubicBezierLinearTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE x1, DOUBLE y1, DOUBLE x2, DOUBLE y2, IUIAnimationTransition2** ppTransition)

3 次ベジェ線形スカラー遷移を作成します。

durationDOUBLEin遷移の継続時間。
finalValueDOUBLEin遷移の終了時におけるアニメーション変数の値。
x1DOUBLEin1 番目の制御点の x 座標。
y1DOUBLEin1 番目の制御点の y 座標。
x2DOUBLEin2 番目の制御点の x 座標。
y2DOUBLEin2 番目の制御点の y 座標。
ppTransitionIUIAnimationTransition2**out新しい 3 次ベジェ線形遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

3 次ベジェ線形遷移では、アニメーション変数の値は遷移の duration の間に初期値から finalValue へ変化します。順序対 (x1, y1) と (x2, y2) は制御点として機能し、遷移の直線的な経路を滑らかなパラメトリック曲線へ変換するための方向情報を与えます。

次の図は、3 次ベジェ線形遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a cubic Bezier linear transition
vtbl 21 HRESULT CreateCubicBezierLinearVectorTransition(DOUBLE duration, DOUBLE* finalValue, DWORD cDimension, DOUBLE x1, DOUBLE y1, DOUBLE x2, DOUBLE y2, IUIAnimationTransition2** ppTransition)

指定された各次元に対して 3 次ベジェ線形ベクトル遷移を作成します。

durationDOUBLEin遷移の継続時間。
finalValueDOUBLE*in遷移の終了時におけるアニメーション変数の最終値を格納したベクトル(サイズは cDimension)。
cDimensionDWORDin遷移を適用する次元数。このパラメーターは finalValue に列挙される値の個数を指定します。
x1DOUBLEin1 番目の制御点の x 座標。
y1DOUBLEin1 番目の制御点の y 座標。
x2DOUBLEin2 番目の制御点の x 座標。
y2DOUBLEin2 番目の制御点の y 座標。
ppTransitionIUIAnimationTransition2**out新しい 3 次ベジェ線形遷移。

戻り値

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。エラーコードの一覧については、Windows Animation エラーコードを参照してください。

解説(Remarks)

3 次ベジェ線形遷移では、アニメーション変数の値は遷移の duration の間に初期値から finalValue へ変化します。順序対 (x1, y1) と (x2, y2) は制御点として機能し、遷移の直線的な経路を滑らかなパラメトリック曲線へ変換するための方向情報を与えます。

次の図は、3 次ベジェ線形遷移におけるアニメーション変数の値の時間変化を示しています。

Diagram showing a cubic Bezier linear vector transition
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IUIAnimationTransitionLibrary2 "{03CFAE53-9580-4EE3-B363-2ECE51B4AF6A}"
#usecom global IUIAnimationTransitionLibrary2 IID_IUIAnimationTransitionLibrary2 "{812F944A-C5C8-4CD9-B0A6-B3DA802F228D}"
#comfunc global IUIAnimationTransitionLibrary2_CreateInstantaneousTransition              3 double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateInstantaneousVectorTransition        4 var,int,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateConstantTransition                   5 double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateDiscreteTransition                   6 double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateDiscreteVectorTransition             7 double,var,int,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateLinearTransition                     8 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateLinearVectorTransition               9 double,var,int,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateLinearTransitionFromSpeed            10 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateLinearVectorTransitionFromSpeed      11 double,var,int,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateSinusoidalTransitionFromVelocity     12 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateSinusoidalTransitionFromRange        13 double,double,double,double,int,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateAccelerateDecelerateTransition       14 double,double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateReversalTransition                   15 double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateCubicTransition                      16 double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateCubicVectorTransition                17 double,var,var,int,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateSmoothStopTransition                 18 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateParabolicTransitionFromAcceleration  19 double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateCubicBezierLinearTransition          20 double,double,double,double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary2_CreateCubicBezierLinearVectorTransition    21 double,var,int,double,double,double,double,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。