ホーム › UI.Animation › IUIAnimationTransitionLibrary2
IUIAnimationTransitionLibrary2
COMメソッド 19
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT CreateInstantaneousTransition(DOUBLE finalValue, IUIAnimationTransition2** transition)
| finalValue | DOUBLE | in | 瞬時に到達させる最終値を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された瞬時遷移オブジェクトを受け取るポインタである。 |
vtbl 4 HRESULT CreateInstantaneousVectorTransition(DOUBLE* finalValue, DWORD cDimension, IUIAnimationTransition2** transition)
| finalValue | DOUBLE* | in | 各次元の最終値を格納した DOUBLE 配列へのポインタである。 |
| cDimension | DWORD | in | finalValue 配列の要素数(次元数)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された瞬時ベクトル遷移オブジェクトを受け取るポインタである。 |
vtbl 5 HRESULT CreateConstantTransition(DOUBLE duration, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 値を一定に保つ期間(秒)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された定数遷移オブジェクトを受け取るポインタである。 |
vtbl 6 HRESULT CreateDiscreteTransition(DOUBLE delay, DOUBLE finalValue, DOUBLE hold, IUIAnimationTransition2** transition)
| delay | DOUBLE | in | 値を変更する前の遅延時間(秒)を指定する。 |
| finalValue | DOUBLE | in | 遅延後に切り替える最終値を指定する。 |
| hold | DOUBLE | in | 最終値を保持する時間(秒)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された離散遷移オブジェクトを受け取るポインタである。 |
vtbl 7 HRESULT CreateDiscreteVectorTransition(DOUBLE delay, DOUBLE* finalValue, DWORD cDimension, DOUBLE hold, IUIAnimationTransition2** transition)
| delay | DOUBLE | in | 値を変更する前の遅延時間(秒)を指定する。 |
| finalValue | DOUBLE* | in | 各次元の最終値を格納した DOUBLE 配列へのポインタである。 |
| cDimension | DWORD | in | finalValue 配列の要素数(次元数)を指定する。 |
| hold | DOUBLE | in | 最終値を保持する時間(秒)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された離散ベクトル遷移オブジェクトを受け取るポインタである。 |
vtbl 8 HRESULT CreateLinearTransition(DOUBLE duration, DOUBLE finalValue, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| finalValue | DOUBLE | in | 線形に到達させる最終値を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された線形遷移オブジェクトを受け取るポインタである。 |
vtbl 9 HRESULT CreateLinearVectorTransition(DOUBLE duration, DOUBLE* finalValue, DWORD cDimension, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| finalValue | DOUBLE* | in | 各次元の最終値を格納した DOUBLE 配列へのポインタである。 |
| cDimension | DWORD | in | finalValue 配列の要素数(次元数)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された線形ベクトル遷移オブジェクトを受け取るポインタである。 |
vtbl 10 HRESULT CreateLinearTransitionFromSpeed(DOUBLE speed, DOUBLE finalValue, IUIAnimationTransition2** transition)
| speed | DOUBLE | in | 値の変化速度を指定する。所要時間はこの速度から算出される。 |
| finalValue | DOUBLE | in | 線形に到達させる最終値を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された線形遷移オブジェクトを受け取るポインタである。 |
vtbl 11 HRESULT CreateLinearVectorTransitionFromSpeed(DOUBLE speed, DOUBLE* finalValue, DWORD cDimension, IUIAnimationTransition2** transition)
| speed | DOUBLE | in | 値の変化速度を指定する。所要時間はこの速度から算出される。 |
| finalValue | DOUBLE* | in | 各次元の最終値を格納した DOUBLE 配列へのポインタである。 |
| cDimension | DWORD | in | finalValue 配列の要素数(次元数)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された線形ベクトル遷移オブジェクトを受け取るポインタである。 |
vtbl 12 HRESULT CreateSinusoidalTransitionFromVelocity(DOUBLE duration, DOUBLE period, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| period | DOUBLE | in | 正弦波振動の周期(秒)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された正弦波遷移オブジェクトを受け取るポインタである。 |
vtbl 13 HRESULT CreateSinusoidalTransitionFromRange(DOUBLE duration, DOUBLE minimumValue, DOUBLE maximumValue, DOUBLE period, UI_ANIMATION_SLOPE slope, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| minimumValue | DOUBLE | in | 正弦波振動の最小値を指定する。 |
| maximumValue | DOUBLE | in | 正弦波振動の最大値を指定する。 |
| period | DOUBLE | in | 正弦波振動の周期(秒)を指定する。 |
| slope | UI_ANIMATION_SLOPE | in | 振動開始時の傾き(増加または減少)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された正弦波遷移オブジェクトを受け取るポインタである。 |
vtbl 14 HRESULT CreateAccelerateDecelerateTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE accelerationRatio, DOUBLE decelerationRatio, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| finalValue | DOUBLE | in | 到達させる最終値を指定する。 |
| accelerationRatio | DOUBLE | in | 全体に対する加速区間の割合を指定する。 |
| decelerationRatio | DOUBLE | in | 全体に対する減速区間の割合を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された加減速遷移オブジェクトを受け取るポインタである。 |
vtbl 15 HRESULT CreateReversalTransition(DOUBLE duration, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 値の進行方向を反転させるのに要する時間(秒)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された反転遷移オブジェクトを受け取るポインタである。 |
vtbl 16 HRESULT CreateCubicTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE finalVelocity, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| finalValue | DOUBLE | in | 到達させる最終値を指定する。 |
| finalVelocity | DOUBLE | in | 終了時の速度を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された3次遷移オブジェクトを受け取るポインタである。 |
vtbl 17 HRESULT CreateCubicVectorTransition(DOUBLE duration, DOUBLE* finalValue, DOUBLE* finalVelocity, DWORD cDimension, IUIAnimationTransition2** transition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| finalValue | DOUBLE* | in | 各次元の最終値を格納した DOUBLE 配列へのポインタである。 |
| finalVelocity | DOUBLE* | in | 各次元の終了時速度を格納した DOUBLE 配列へのポインタである。 |
| cDimension | DWORD | in | 配列の要素数(次元数)を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された3次ベクトル遷移オブジェクトを受け取るポインタである。 |
vtbl 18 HRESULT CreateSmoothStopTransition(DOUBLE maximumDuration, DOUBLE finalValue, IUIAnimationTransition2** transition)
| maximumDuration | DOUBLE | in | 遷移に許容される最大時間(秒)を指定する。 |
| finalValue | DOUBLE | in | 滑らかに停止して到達させる最終値を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された滑らかな停止遷移オブジェクトを受け取るポインタである。 |
vtbl 19 HRESULT CreateParabolicTransitionFromAcceleration(DOUBLE finalValue, DOUBLE finalVelocity, DOUBLE acceleration, IUIAnimationTransition2** transition)
| finalValue | DOUBLE | in | 到達させる最終値を指定する。 |
| finalVelocity | DOUBLE | in | 終了時の速度を指定する。 |
| acceleration | DOUBLE | in | 適用する加速度を指定する。 |
| transition | IUIAnimationTransition2** | out | 生成された放物線遷移オブジェクトを受け取るポインタである。 |
vtbl 20 HRESULT CreateCubicBezierLinearTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE x1, DOUBLE y1, DOUBLE x2, DOUBLE y2, IUIAnimationTransition2** ppTransition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| finalValue | DOUBLE | in | 到達させる最終値を指定する。 |
| x1 | DOUBLE | in | 1番目の3次ベジェ制御点の X 座標を指定する。 |
| y1 | DOUBLE | in | 1番目の3次ベジェ制御点の Y 座標を指定する。 |
| x2 | DOUBLE | in | 2番目の3次ベジェ制御点の X 座標を指定する。 |
| y2 | DOUBLE | in | 2番目の3次ベジェ制御点の Y 座標を指定する。 |
| ppTransition | IUIAnimationTransition2** | out | 生成された3次ベジェ線形遷移オブジェクトを受け取るポインタである。 |
vtbl 21 HRESULT CreateCubicBezierLinearVectorTransition(DOUBLE duration, DOUBLE* finalValue, DWORD cDimension, DOUBLE x1, DOUBLE y1, DOUBLE x2, DOUBLE y2, IUIAnimationTransition2** ppTransition)
| duration | DOUBLE | in | 遷移の所要時間(秒)を指定する。 |
| finalValue | DOUBLE* | in | 各次元の最終値を格納した DOUBLE 配列へのポインタである。 |
| cDimension | DWORD | in | finalValue 配列の要素数(次元数)を指定する。 |
| x1 | DOUBLE | in | 1番目の3次ベジェ制御点の X 座標を指定する。 |
| y1 | DOUBLE | in | 1番目の3次ベジェ制御点の Y 座標を指定する。 |
| x2 | DOUBLE | in | 2番目の3次ベジェ制御点の X 座標を指定する。 |
| y2 | DOUBLE | in | 2番目の3次ベジェ制御点の Y 座標を指定する。 |
| ppTransition | IUIAnimationTransition2** | out | 生成された3次ベジェ線形ベクトル遷移オブジェクトを受け取るポインタである。 |
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 指定が可能。#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 sptr,int,sptr #comfunc global IUIAnimationTransitionLibrary2_CreateConstantTransition 5 double,sptr #comfunc global IUIAnimationTransitionLibrary2_CreateDiscreteTransition 6 double,double,double,sptr #comfunc global IUIAnimationTransitionLibrary2_CreateDiscreteVectorTransition 7 double,sptr,int,double,sptr #comfunc global IUIAnimationTransitionLibrary2_CreateLinearTransition 8 double,double,sptr #comfunc global IUIAnimationTransitionLibrary2_CreateLinearVectorTransition 9 double,sptr,int,sptr #comfunc global IUIAnimationTransitionLibrary2_CreateLinearTransitionFromSpeed 10 double,double,sptr #comfunc global IUIAnimationTransitionLibrary2_CreateLinearVectorTransitionFromSpeed 11 double,sptr,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,sptr,sptr,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,sptr,int,double,double,double,double,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。