ホーム › Graphics.DirectComposition › IDCompositionShadowEffect
IDCompositionShadowEffect
COM公式ドキュメント
シャドウエフェクトは、画像のアルファチャンネルから影を生成するために使用します。アルファ値が大きいほど影は不透明になり、アルファ値が小さいほど透明になります。ぼかしの量と影の色を設定できます。
メソッド 11
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 4 HRESULT SetStandardDeviation(IDCompositionAnimation* animation)
| animation | IDCompositionAnimation* | in | 影のぼかし標準偏差を時間変化させるアニメーションオブジェクト。NULL不可。 |
| amount | FLOAT | in | 影のぼかしの標準偏差。値が大きいほど柔らかい影になる浮動小数点値である。 |
vtbl 6 HRESULT SetColor(D2D_VECTOR_4F* color)
影の色を設定します。
| color | D2D_VECTOR_4F* | in | 影の色です。 |
戻り値
vtbl 7 HRESULT SetRed(IDCompositionAnimation* animation)
| animation | IDCompositionAnimation* | in | 影の赤成分を時間変化させるアニメーションオブジェクト。NULL不可。 |
| amount | FLOAT | in | 影の色の赤成分。0.0〜1.0の範囲で指定する浮動小数点値である。 |
vtbl 9 HRESULT SetGreen(IDCompositionAnimation* animation)
| animation | IDCompositionAnimation* | in | 影の緑成分を時間変化させるアニメーションオブジェクト。NULL不可。 |
| amount | FLOAT | in | 影の色の緑成分。0.0〜1.0の範囲で指定する浮動小数点値である。 |
vtbl 11 HRESULT SetBlue(IDCompositionAnimation* animation)
| animation | IDCompositionAnimation* | in | 影の青成分を時間変化させるアニメーションオブジェクト。NULL不可。 |
| amount | FLOAT | in | 影の色の青成分。0.0〜1.0の範囲で指定する浮動小数点値である。 |
vtbl 13 HRESULT SetAlpha(IDCompositionAnimation* animation)
| animation | IDCompositionAnimation* | in | 影の不透明度を時間変化させるアニメーションオブジェクト。NULL不可。 |
| amount | FLOAT | in | 影のアルファ(不透明度)。0.0〜1.0の範囲で指定する浮動小数点値である。 |
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IDCompositionShadowEffect "{4AD18AC0-CFD2-4C2F-BB62-96E54FDB6879}" #usecom global IDCompositionShadowEffect IID_IDCompositionShadowEffect "{}" #comfunc global IDCompositionShadowEffect_SetStandardDeviation 4 sptr #comfunc global IDCompositionShadowEffect_SetStandardDeviation 5 float #comfunc global IDCompositionShadowEffect_SetColor 6 var #comfunc global IDCompositionShadowEffect_SetRed 7 sptr #comfunc global IDCompositionShadowEffect_SetRed 8 float #comfunc global IDCompositionShadowEffect_SetGreen 9 sptr #comfunc global IDCompositionShadowEffect_SetGreen 10 float #comfunc global IDCompositionShadowEffect_SetBlue 11 sptr #comfunc global IDCompositionShadowEffect_SetBlue 12 float #comfunc global IDCompositionShadowEffect_SetAlpha 13 sptr #comfunc global IDCompositionShadowEffect_SetAlpha 14 float ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IDCompositionShadowEffect "{4AD18AC0-CFD2-4C2F-BB62-96E54FDB6879}" #usecom global IDCompositionShadowEffect IID_IDCompositionShadowEffect "{}" #comfunc global IDCompositionShadowEffect_SetStandardDeviation 4 sptr #comfunc global IDCompositionShadowEffect_SetStandardDeviation 5 float #comfunc global IDCompositionShadowEffect_SetColor 6 sptr #comfunc global IDCompositionShadowEffect_SetRed 7 sptr #comfunc global IDCompositionShadowEffect_SetRed 8 float #comfunc global IDCompositionShadowEffect_SetGreen 9 sptr #comfunc global IDCompositionShadowEffect_SetGreen 10 float #comfunc global IDCompositionShadowEffect_SetBlue 11 sptr #comfunc global IDCompositionShadowEffect_SetBlue 12 float #comfunc global IDCompositionShadowEffect_SetAlpha 13 sptr #comfunc global IDCompositionShadowEffect_SetAlpha 14 float ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。