ホーム › Graphics.DirectComposition › IDCompositionVisual
IDCompositionVisual
COMメソッド 17
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT SetOffsetX(IDCompositionAnimation* animation)
| animation | IDCompositionAnimation* | in | X方向オフセットを駆動するアニメーションへのポインタ。 |
| offsetX | FLOAT | in | ビジュアルの水平方向オフセット(DIP)。 |
vtbl 5 HRESULT SetOffsetY(IDCompositionAnimation* animation)
| animation | IDCompositionAnimation* | in | Y方向オフセットを駆動するアニメーションへのポインタ。 |
| offsetY | FLOAT | in | ビジュアルの垂直方向オフセット(DIP)。 |
vtbl 7 HRESULT SetTransform(IDCompositionTransform* transform)
| transform | IDCompositionTransform* | inoptional | ビジュアルに適用する変換オブジェクトへのポインタ。NULLで解除。 |
vtbl 8 HRESULT SetTransform(D2D_MATRIX_3X2_F* matrix)
| matrix | D2D_MATRIX_3X2_F* | in | ビジュアルに適用する2x3行列D2D_MATRIX_3X2_Fへのポインタ。 |
vtbl 9 HRESULT SetTransformParent(IDCompositionVisual* visual)
| visual | IDCompositionVisual* | inoptional | 座標系の基準となる親ビジュアルへのポインタ。NULLでルート基準。 |
vtbl 10 HRESULT SetEffect(IDCompositionEffect* effect)
| effect | IDCompositionEffect* | inoptional | ビジュアルに適用するエフェクトへのポインタ。NULLで解除。 |
vtbl 11 HRESULT SetBitmapInterpolationMode(DCOMPOSITION_BITMAP_INTERPOLATION_MODE interpolationMode)
| interpolationMode | DCOMPOSITION_BITMAP_INTERPOLATION_MODE | in | ビットマップ拡縮時の補間方法を示すDCOMPOSITION_BITMAP_INTERPOLATION_MODE。 |
vtbl 12 HRESULT SetBorderMode(DCOMPOSITION_BORDER_MODE borderMode)
| borderMode | DCOMPOSITION_BORDER_MODE | in | 境界処理方法を示すDCOMPOSITION_BORDER_MODE。SOFTやHARDなど。 |
vtbl 13 HRESULT SetClip(IDCompositionClip* clip)
| clip | IDCompositionClip* | inoptional | ビジュアルに適用するクリップオブジェクトへのポインタ。NULLで解除。 |
vtbl 14 HRESULT SetClip(D2D_RECT_F* rect)
| rect | D2D_RECT_F* | in | クリップ矩形を示すD2D_RECT_Fへのポインタ。 |
| content | IUnknown* | inoptional | ビジュアルの内容となるサーフェスやスワップチェーンのIUnknown。NULLで解除。 |
vtbl 16 HRESULT AddVisual(IDCompositionVisual* visual, BOOL insertAbove, IDCompositionVisual* referenceVisual)
| visual | IDCompositionVisual* | in | 子として追加するIDCompositionVisualへのポインタ。 |
| insertAbove | BOOL | in | 基準ビジュアルの上に挿入するか。TRUEで上、FALSEで下。 |
| referenceVisual | IDCompositionVisual* | inoptional | 挿入位置の基準となる子ビジュアル。NULLで先頭/末尾を表す。 |
vtbl 17 HRESULT RemoveVisual(IDCompositionVisual* visual)
| visual | IDCompositionVisual* | in | 削除する子IDCompositionVisualへのポインタ。 |
vtbl 18 HRESULT RemoveAllVisuals()
vtbl 19 HRESULT SetCompositeMode(DCOMPOSITION_COMPOSITE_MODE compositeMode)
| compositeMode | DCOMPOSITION_COMPOSITE_MODE | in | ビジュアルの合成モードを示すDCOMPOSITION_COMPOSITE_MODE。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IDCompositionVisual "{4D93059D-097B-4651-9A60-F0F25116E2F3}" #usecom global IDCompositionVisual IID_IDCompositionVisual "{}" #comfunc global IDCompositionVisual_SetOffsetX 3 sptr #comfunc global IDCompositionVisual_SetOffsetX 4 float #comfunc global IDCompositionVisual_SetOffsetY 5 sptr #comfunc global IDCompositionVisual_SetOffsetY 6 float #comfunc global IDCompositionVisual_SetTransform 7 sptr #comfunc global IDCompositionVisual_SetTransform 8 var #comfunc global IDCompositionVisual_SetTransformParent 9 sptr #comfunc global IDCompositionVisual_SetEffect 10 sptr #comfunc global IDCompositionVisual_SetBitmapInterpolationMode 11 int #comfunc global IDCompositionVisual_SetBorderMode 12 int #comfunc global IDCompositionVisual_SetClip 13 sptr #comfunc global IDCompositionVisual_SetClip 14 var #comfunc global IDCompositionVisual_SetContent 15 sptr #comfunc global IDCompositionVisual_AddVisual 16 sptr,int,sptr #comfunc global IDCompositionVisual_RemoveVisual 17 sptr #comfunc global IDCompositionVisual_RemoveAllVisuals 18 #comfunc global IDCompositionVisual_SetCompositeMode 19 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IDCompositionVisual "{4D93059D-097B-4651-9A60-F0F25116E2F3}" #usecom global IDCompositionVisual IID_IDCompositionVisual "{}" #comfunc global IDCompositionVisual_SetOffsetX 3 sptr #comfunc global IDCompositionVisual_SetOffsetX 4 float #comfunc global IDCompositionVisual_SetOffsetY 5 sptr #comfunc global IDCompositionVisual_SetOffsetY 6 float #comfunc global IDCompositionVisual_SetTransform 7 sptr #comfunc global IDCompositionVisual_SetTransform 8 sptr #comfunc global IDCompositionVisual_SetTransformParent 9 sptr #comfunc global IDCompositionVisual_SetEffect 10 sptr #comfunc global IDCompositionVisual_SetBitmapInterpolationMode 11 int #comfunc global IDCompositionVisual_SetBorderMode 12 int #comfunc global IDCompositionVisual_SetClip 13 sptr #comfunc global IDCompositionVisual_SetClip 14 sptr #comfunc global IDCompositionVisual_SetContent 15 sptr #comfunc global IDCompositionVisual_AddVisual 16 sptr,int,sptr #comfunc global IDCompositionVisual_RemoveVisual 17 sptr #comfunc global IDCompositionVisual_RemoveAllVisuals 18 #comfunc global IDCompositionVisual_SetCompositeMode 19 int ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。