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

ID2D1GradientStopCollection1

COM
IIDae1572f4-5dd0-4777-998b-9279472ae63b継承元ID2D1GradientStopCollection自前メソッド開始 vtbl8

公式ドキュメント

線形グラデーションブラシおよび放射状グラデーションブラシのための D2D1_GRADIENT_STOP オブジェクトのコレクションを表します。グラデーションストップコレクションに追加された新しいパラメーターすべてに対する get メソッドを提供します。

メソッド 5

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

vtbl 8 void GetGradientStops1(D2D1_GRADIENT_STOP* gradientStops, DWORD gradientStopsCount)

コレクションからグラデーションストップをメモリーへコピーします。

gradientStopsD2D1_GRADIENT_STOP*outこのメソッドが返るとき、D2D1_GRADIENT_STOP 構造体の 1 次元配列へのポインターが格納されます。
gradientStopsCountDWORDinコピーするグラデーションストップの数。

解説(Remarks)

ID2D1DeviceContext::CreateGradientStopCollection の場合、このメソッドは作成メソッドで指定したものと同じ値を返します。ID2D1GradientStopCollection1 オブジェクトが ID2D1RenderTarget::CreateGradientStopCollection を使用して作成された場合、ここで返されるストップは、まず colorInterpolationGamma パラメーターで指定されたガンマ空間へ変換されます。色空間およびガンマ空間の詳細については、ID2D1DeviceContext::CreateGradientStopCollection メソッドを参照してください。

gradientStopsCount がコレクション内のグラデーションストップ数より小さい場合、残りのグラデーションストップは省略されます。gradientStopsCount がコレクション内のグラデーションストップ数より大きい場合、余分なグラデーションストップは NULL に設定されます。コレクション内のグラデーションストップ数を取得するには、GetGradientStopCount メソッドを使用してください。

vtbl 9 D2D1_COLOR_SPACE GetPreInterpolationSpace()

入力色の色空間、およびグラデーションストップが補間される空間を取得します。

戻り値

型: D2D1_COLOR_SPACE

このメソッドは色空間を返します。

解説(Remarks)

このオブジェクトが ID2D1RenderTarget::CreateGradientStopCollection を使用して作成された場合、このメソッドは色補間ガンマに関連する色空間を返します。

vtbl 10 D2D1_COLOR_SPACE GetPostInterpolationSpace()

補間が行われた後の色空間を取得します。

戻り値

型: D2D1_COLOR_SPACE

このメソッドは色空間を返します。

解説(Remarks)

ID2D1RenderTarget::CreateGradientStopCollection を使用して作成した場合、このメソッドは D2D1_COLOR_SPACE_SRGB を返します。

vtbl 11 D2D1_BUFFER_PRECISION GetBufferPrecision()

グラデーションバッファーの精度を取得します。

戻り値

型: D2D1_BUFFER_PRECISION

グラデーションバッファーのバッファー精度。

解説(Remarks)

このオブジェクトが ID2D1RenderTarget::CreateGradientStopCollection を使用して作成された場合、このメソッドは D2D1_BUFFER_PRECISION_8BPC_UNORM を返します。

vtbl 12 D2D1_COLOR_INTERPOLATION_MODE GetColorInterpolationMode()

グラデーションストップコレクションが使用する色補間モードを取得します。

戻り値

型: D2D1_COLOR_INTERPOLATION_MODE

色補間モード。

出典・ライセンス: 上記「公式ドキュメント」の内容は 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_ID2D1GradientStopCollection1 "{AE1572F4-5DD0-4777-998B-9279472AE63B}"
#usecom global ID2D1GradientStopCollection1 IID_ID2D1GradientStopCollection1 "{}"
#comfunc global ID2D1GradientStopCollection1_GetGradientStops1          8 var,int
#comfunc global ID2D1GradientStopCollection1_GetPreInterpolationSpace   9
#comfunc global ID2D1GradientStopCollection1_GetPostInterpolationSpace  10
#comfunc global ID2D1GradientStopCollection1_GetBufferPrecision         11
#comfunc global ID2D1GradientStopCollection1_GetColorInterpolationMode  12
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。