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

ID2D1ImageBrush

COM
IIDfe9e984d-3f95-407c-b5db-cb94d4e8f87c継承元ID2D1Brush自前メソッド開始 vtbl8

公式ドキュメント

ID2D1Image を基にしたブラシを表します。

メソッド 10

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

vtbl 8 void SetImage(ID2D1Image* image)

指定したイメージブラシに関連付けるイメージを設定します。

imageID2D1Image*inoptionalイメージブラシに関連付けるイメージ。
vtbl 9 void SetExtendModeX(D2D1_EXTEND_MODE extendModeX)

イメージブラシ内のソース矩形の内容を x 軸方向にどのように拡張するかを設定します。

extendModeXD2D1_EXTEND_MODEinイメージの x 軸方向の拡張モード。
vtbl 10 void SetExtendModeY(D2D1_EXTEND_MODE extendModeY)

y 軸方向の拡張モードを設定します。

extendModeYD2D1_EXTEND_MODEinイメージの y 軸方向の拡張モード。
vtbl 11 void SetInterpolationMode(D2D1_INTERPOLATION_MODE interpolationMode)

イメージブラシの補間モードを設定します。

interpolationModeD2D1_INTERPOLATION_MODEinブラシ変換を処理するために、イメージの内容をどのように補間するか。
vtbl 12 void SetSourceRectangle(D2D_RECT_F* sourceRectangle)

イメージブラシ内のソース矩形を設定します。

sourceRectangleD2D_RECT_F*inタイル化するイメージの部分を定義するソース矩形。

解説(Remarks)

sourceRectangle パラメーターの左上隅は、ブラシ空間の原点にマッピングされます。つまり、ブラシ変換とワールド変換の両方が単位行列である場合、ソース矩形の左上隅にあるイメージの部分は、レンダーターゲットの (0,0) にレンダリングされます。

ソース矩形は、入力イメージがピクセルベース(ビットマップまたはエフェクト)であるか、コマンドリストベースであるかによって、異なる方法で拡張されます。

vtbl 13 void GetImage(ID2D1Image** image)

イメージブラシに関連付けられたイメージを取得します。

imageID2D1Image**outこのメソッドが返るとき、このブラシに関連付けられたイメージへのポインターのアドレスが格納されます。
vtbl 14 D2D1_EXTEND_MODE GetExtendModeX()

イメージブラシの x 軸方向の拡張モードを取得します。

戻り値

型: D2D1_EXTEND_MODE

このメソッドは x 軸方向の拡張モードを返します。

vtbl 15 D2D1_EXTEND_MODE GetExtendModeY()

イメージブラシの y 軸方向の拡張モードを取得します。

戻り値

型: D2D1_EXTEND_MODE

このメソッドは y 軸方向の拡張モードを返します。

vtbl 16 D2D1_INTERPOLATION_MODE GetInterpolationMode()

イメージブラシの補間モードを取得します。

戻り値

型: D2D1_INTERPOLATION_MODE

このメソッドは補間モードを返します。

vtbl 17 void GetSourceRectangle(D2D_RECT_F* sourceRectangle)

イメージブラシとして描画される際に、イメージの境界として使用される矩形を取得します。

sourceRectangleD2D_RECT_F*outこのメソッドが返るとき、出力ソース矩形のアドレスが格納されます。
出典・ライセンス: 上記「公式ドキュメント」の内容は 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_ID2D1ImageBrush "{FE9E984D-3F95-407C-B5DB-CB94D4E8F87C}"
#usecom global ID2D1ImageBrush IID_ID2D1ImageBrush "{}"
#comfunc global ID2D1ImageBrush_SetImage              8 sptr
#comfunc global ID2D1ImageBrush_SetExtendModeX        9 int
#comfunc global ID2D1ImageBrush_SetExtendModeY        10 int
#comfunc global ID2D1ImageBrush_SetInterpolationMode  11 int
#comfunc global ID2D1ImageBrush_SetSourceRectangle    12 var
#comfunc global ID2D1ImageBrush_GetImage              13 sptr
#comfunc global ID2D1ImageBrush_GetExtendModeX        14
#comfunc global ID2D1ImageBrush_GetExtendModeY        15
#comfunc global ID2D1ImageBrush_GetInterpolationMode  16
#comfunc global ID2D1ImageBrush_GetSourceRectangle    17 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。