ID2D1Brush_SetTransform

ブラシに適用する変換を設定する。

ID2D1Brush_SetTransform this, transform

this : [comobj] ID2D1Brush インターフェースの COM オブジェクト変数
transform : [var] 

(プラグイン / モジュール : com_misc.dll)

解説

ブラシに適用する変換を設定する。

[備考]

ブラシで描画する際は、レンダーターゲットの座標空間で塗りつぶしが行われる。ブラシは描画対象に整列するよう自動的に位置を合わせるわけではなく、デフォルトではレンダーターゲットの原点
(0, 0)
から描画を開始する。[**ID2D1LinearGradientBrush**](/windows/win32/api/d2d1/nn-d2d1-id2d1lineargradientbrush)
で定義されたグラデーションは、開始点と終了点を設定することで対象領域へ「移動」できる。同様に
[**ID2D1RadialGradientBrush**](/windows/win32/api/d2d1/nn-d2d1-id2d1radialgradientbrush)
で定義されたグラデーションは中心と半径を変更することで移動できる。[**ID2D1BitmapBrush**](/windows/win32/api/d2d1/nn-d2d1-id2d1bitmapbrush)
の内容を塗りつぶし対象領域に整列させたい場合は **SetTransform**
メソッドを使ってビットマップを目的の位置へ平行移動できる。この変換はブラシのみに作用し、レンダーターゲットによって描画される他のコンテンツには影響しない。次の図は
(100, 100) に位置する矩形を
[**ID2D1BitmapBrush**](/windows/win32/api/d2d1/nn-d2d1-id2d1bitmapbrush)
で塗りつぶしたときの効果を示す。左の図はブラシを変換しないまま矩形を塗りつぶした結果で、ビットマップはレンダーターゲットの原点に描画される。その結果、矩形にはビットマップの一部しか現れない。右の図は
[**ID2D1BitmapBrush**](/windows/win32/api/d2d1/nn-d2d1-id2d1bitmapbrush)
を変換してその内容を右へ 50 ピクセル、下へ 50
ピクセルずらした結果で、ビットマップが矩形を埋めている。![変換していないブラシで塗られた正方形と、変換したブラシで塗られた正方形を示す図](images/brushes-ovw-transform.png)

情報

プラグイン / モジュールcom_misc.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の com_misc.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_com_misc_gen2.hs