IUIAnimationTransitionFactory2
COM公式ドキュメント
カスタム補間器から遷移(トランジション)を作成するメソッドを定義します。指定した次元における遷移の作成をサポートします。
解説(Remarks)
遷移ライブラリに用意されていないアニメーション効果がアプリケーションで必要な場合、開発者はアプリケーションで使用できるカスタム遷移を実装できます。カスタム遷移は、まず遷移用の補間器関数を実装し、次にファクトリオブジェクトを使用してその補間器から遷移を生成することで作成します。補間器は IUIAnimationInterpolator インターフェイスまたは IUIAnimationInterpolator2 インターフェイスのいずれかを実装する必要があります。遷移ファクトリオブジェクトの実装は UIAnimationTransitionFactory または UIAnimationTransitionFactory2 によって提供されます。
メソッド 1
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
指定した次元について、カスタム補間器から遷移(トランジション)を作成します。
| interpolator | IUIAnimationInterpolator2* | in | 遷移の作成元となる補間器。 指定するオブジェクトは IUIAnimationInterpolator2 インターフェイスを実装している必要があります。 |
| transition | IUIAnimationTransition2** | out | 新しい遷移。 |
戻り値
メソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
エラーコードの一覧については、Windows Animation Error Codes を参照してください。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IUIAnimationTransitionFactory2 "{937D4916-C1A6-42D5-88D8-30344D6EFE31}"
#usecom global IUIAnimationTransitionFactory2 IID_IUIAnimationTransitionFactory2 "{84302F97-7F7B-4040-B190-72AC9D18E420}"
#comfunc global IUIAnimationTransitionFactory2_CreateTransition 3 sptr,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。