Win32 API 日本語リファレンス
ホームGraphics.DirectComposition › IDCompositionRotateTransform

IDCompositionRotateTransform

COM
IID641ed83c-ae96-46c5-90dc-32774cc5c6d5継承元IDCompositionTransform自前メソッド開始 vtbl3

公式ドキュメント

ビジュアルの z 軸まわりの回転に影響する 2D 変換を表します。座標系は指定された中心点を基準に回転します。

解説(Remarks)

回転変換は次の 3x3 行列を表します。

Three-by-three transformation matrix

この変換は、座標系を時計回りまたは反時計回りに回転させ、中心点が移動しないように対応する平行移動を適用します。

メソッド 6

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

vtbl 3 HRESULT SetAngle(IDCompositionAnimation* animation)
animationIDCompositionAnimation*in回転角を駆動するアニメーションへのポインタ。
vtbl 4 HRESULT SetAngle(FLOAT angle)
angleFLOATin回転角度(度)。時計回りが正。
vtbl 5 HRESULT SetCenterX(IDCompositionAnimation* animation)
animationIDCompositionAnimation*in回転中心X座標を駆動するアニメーションへのポインタ。
vtbl 6 HRESULT SetCenterX(FLOAT centerX)
centerXFLOATin回転中心点のX座標(DIP)。
vtbl 7 HRESULT SetCenterY(IDCompositionAnimation* animation)
animationIDCompositionAnimation*in回転中心Y座標を駆動するアニメーションへのポインタ。
vtbl 8 HRESULT SetCenterY(FLOAT centerY)
centerYFLOATin回転中心点のY座標(DIP)。
出典・ライセンス: 上記「公式ドキュメント」の内容は 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_IDCompositionRotateTransform "{641ED83C-AE96-46C5-90DC-32774CC5C6D5}"
#usecom global IDCompositionRotateTransform IID_IDCompositionRotateTransform "{}"
#comfunc global IDCompositionRotateTransform_SetAngle    3 sptr
#comfunc global IDCompositionRotateTransform_SetAngle    4 float
#comfunc global IDCompositionRotateTransform_SetCenterX  5 sptr
#comfunc global IDCompositionRotateTransform_SetCenterX  6 float
#comfunc global IDCompositionRotateTransform_SetCenterY  7 sptr
#comfunc global IDCompositionRotateTransform_SetCenterY  8 float
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。