ホーム › UI.Animation › IUIAnimationTransitionLibrary
IUIAnimationTransitionLibrary
COMメソッド 12
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT CreateInstantaneousTransition(DOUBLE finalValue, IUIAnimationTransition** transition)
| finalValue | DOUBLE | in | 瞬時に移行する到達値を指定する。 |
| transition | IUIAnimationTransition** | out | 生成された即時トランジションを受け取るポインタである。 |
vtbl 4 HRESULT CreateConstantTransition(DOUBLE duration, IUIAnimationTransition** transition)
| duration | DOUBLE | in | 値を一定に保つ時間を秒単位で指定する。 |
| transition | IUIAnimationTransition** | out | 生成された定値トランジションを受け取るポインタである。 |
vtbl 5 HRESULT CreateDiscreteTransition(DOUBLE delay, DOUBLE finalValue, DOUBLE hold, IUIAnimationTransition** transition)
| delay | DOUBLE | in | 値が切り替わるまでの遅延時間を秒単位で指定する。 |
| finalValue | DOUBLE | in | 切り替え後の到達値を指定する。 |
| hold | DOUBLE | in | 到達値を保持する時間を秒単位で指定する。 |
| transition | IUIAnimationTransition** | out | 生成された離散トランジションを受け取るポインタである。 |
vtbl 6 HRESULT CreateLinearTransition(DOUBLE duration, DOUBLE finalValue, IUIAnimationTransition** transition)
| duration | DOUBLE | in | トランジションの所要時間を秒単位で指定する。 |
| finalValue | DOUBLE | in | 線形に移行する到達値を指定する。 |
| transition | IUIAnimationTransition** | out | 生成された線形トランジションを受け取るポインタである。 |
vtbl 7 HRESULT CreateLinearTransitionFromSpeed(DOUBLE speed, DOUBLE finalValue, IUIAnimationTransition** transition)
| speed | DOUBLE | in | 値が変化する速度(単位時間あたりの変化量)を指定する。 |
| finalValue | DOUBLE | in | 線形に移行する到達値を指定する。 |
| transition | IUIAnimationTransition** | out | 生成された速度指定の線形トランジションを受け取るポインタである。 |
vtbl 8 HRESULT CreateSinusoidalTransitionFromVelocity(DOUBLE duration, DOUBLE period, IUIAnimationTransition** transition)
| duration | DOUBLE | in | トランジションの所要時間を秒単位で指定する。 |
| period | DOUBLE | in | 正弦振動の周期を秒単位で指定する。 |
| transition | IUIAnimationTransition** | out | 生成された正弦トランジションを受け取るポインタである。 |
vtbl 9 HRESULT CreateSinusoidalTransitionFromRange(DOUBLE duration, DOUBLE minimumValue, DOUBLE maximumValue, DOUBLE period, UI_ANIMATION_SLOPE slope, IUIAnimationTransition** transition)
| duration | DOUBLE | in | トランジションの所要時間を秒単位で指定する。 |
| minimumValue | DOUBLE | in | 振動の最小値を指定する。 |
| maximumValue | DOUBLE | in | 振動の最大値を指定する。 |
| period | DOUBLE | in | 正弦振動の周期を秒単位で指定する。 |
| slope | UI_ANIMATION_SLOPE | in | 振動開始時の傾き(増加か減少か)を指定する。 |
| transition | IUIAnimationTransition** | out | 生成された範囲指定の正弦トランジションを受け取るポインタである。 |
vtbl 10 HRESULT CreateAccelerateDecelerateTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE accelerationRatio, DOUBLE decelerationRatio, IUIAnimationTransition** transition)
| duration | DOUBLE | in | トランジションの所要時間を秒単位で指定する。 |
| finalValue | DOUBLE | in | 到達値を指定する。 |
| accelerationRatio | DOUBLE | in | 所要時間のうち加速に費やす割合を 0〜1 で指定する。 |
| decelerationRatio | DOUBLE | in | 所要時間のうち減速に費やす割合を 0〜1 で指定する。 |
| transition | IUIAnimationTransition** | out | 生成された加減速トランジションを受け取るポインタである。 |
vtbl 11 HRESULT CreateReversalTransition(DOUBLE duration, IUIAnimationTransition** transition)
| duration | DOUBLE | in | 速度の向きを反転させて元の値へ戻すまでの所要時間を秒単位で指定する。 |
| transition | IUIAnimationTransition** | out | 生成された反転トランジションを受け取るポインタである。 |
vtbl 12 HRESULT CreateCubicTransition(DOUBLE duration, DOUBLE finalValue, DOUBLE finalVelocity, IUIAnimationTransition** transition)
| duration | DOUBLE | in | トランジションの所要時間を秒単位で指定する。 |
| finalValue | DOUBLE | in | 到達値を指定する。 |
| finalVelocity | DOUBLE | in | トランジション終了時の速度を指定する。 |
| transition | IUIAnimationTransition** | out | 生成された三次トランジションを受け取るポインタである。 |
vtbl 13 HRESULT CreateSmoothStopTransition(DOUBLE maximumDuration, DOUBLE finalValue, IUIAnimationTransition** transition)
| maximumDuration | DOUBLE | in | 停止までに許容する最長時間を秒単位で指定する。 |
| finalValue | DOUBLE | in | 滑らかに停止する到達値を指定する。 |
| transition | IUIAnimationTransition** | out | 生成されたスムーズ停止トランジションを受け取るポインタである。 |
vtbl 14 HRESULT CreateParabolicTransitionFromAcceleration(DOUBLE finalValue, DOUBLE finalVelocity, DOUBLE acceleration, IUIAnimationTransition** transition)
| finalValue | DOUBLE | in | 到達値を指定する。 |
| finalVelocity | DOUBLE | in | トランジション終了時の速度を指定する。 |
| acceleration | DOUBLE | in | 値変化の加速度を指定する。 |
| transition | IUIAnimationTransition** | out | 生成された放物線トランジションを受け取るポインタである。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IUIAnimationTransitionLibrary "{CA5A14B1-D24F-48B8-8FE4-C78169BA954E}"
#usecom global IUIAnimationTransitionLibrary IID_IUIAnimationTransitionLibrary "{1D6322AD-AA85-4EF5-A828-86D71067D145}"
#comfunc global IUIAnimationTransitionLibrary_CreateInstantaneousTransition 3 double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateConstantTransition 4 double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateDiscreteTransition 5 double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateLinearTransition 6 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateLinearTransitionFromSpeed 7 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateSinusoidalTransitionFromVelocity 8 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateSinusoidalTransitionFromRange 9 double,double,double,double,int,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateAccelerateDecelerateTransition 10 double,double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateReversalTransition 11 double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateCubicTransition 12 double,double,double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateSmoothStopTransition 13 double,double,sptr
#comfunc global IUIAnimationTransitionLibrary_CreateParabolicTransitionFromAcceleration 14 double,double,double,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。