ホーム › Graphics.Direct2D.Common › ID2D1SimplifiedGeometrySink
ID2D1SimplifiedGeometrySink
COMメソッド 7
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 void SetFillMode(D2D1_FILL_MODE fillMode)
| fillMode | D2D1_FILL_MODE | in | ジオメトリの塗りつぶし規則(交互・巻数)を指定するD2D1_FILL_MODE列挙値。 |
vtbl 4 void SetSegmentFlags(D2D1_PATH_SEGMENT vertexFlags)
| vertexFlags | D2D1_PATH_SEGMENT | in | 以降に追加するセグメントに適用する属性フラグ(D2D1_PATH_SEGMENT)。 |
vtbl 5 void BeginFigure(D2D_POINT_2F startPoint, D2D1_FIGURE_BEGIN figureBegin)
| startPoint | D2D_POINT_2F | in | 新しい図形(フィギュア)の始点座標を表すD2D_POINT_2F。 |
| figureBegin | D2D1_FIGURE_BEGIN | in | 図形を塗りつぶし用か中抜き(ホロー)かを指定するD2D1_FIGURE_BEGIN列挙値。 |
vtbl 6 void AddLines(D2D_POINT_2F* points, DWORD pointsCount)
| points | D2D_POINT_2F* | in | 順に結ぶ直線セグメントの終点座標(D2D_POINT_2F)配列。 |
| pointsCount | DWORD | in | points配列の要素数。 |
vtbl 7 void AddBeziers(D2D1_BEZIER_SEGMENT* beziers, DWORD beziersCount)
| beziers | D2D1_BEZIER_SEGMENT* | in | 追加する三次ベジェセグメント(D2D1_BEZIER_SEGMENT)の配列。 |
| beziersCount | DWORD | in | beziers配列の要素数。 |
vtbl 8 void EndFigure(D2D1_FIGURE_END figureEnd)
| figureEnd | D2D1_FIGURE_END | in | 図形を閉じる(始点へ連結)か開いたままにするかを指定するD2D1_FIGURE_END列挙値。 |
vtbl 9 HRESULT Close()
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_ID2D1SimplifiedGeometrySink "{2CD9069E-12E2-11DC-9FED-001143A055F9}" #usecom global ID2D1SimplifiedGeometrySink IID_ID2D1SimplifiedGeometrySink "{}" #comfunc global ID2D1SimplifiedGeometrySink_SetFillMode 3 int #comfunc global ID2D1SimplifiedGeometrySink_SetSegmentFlags 4 int #comfunc global ID2D1SimplifiedGeometrySink_BeginFigure 5 int,int #comfunc global ID2D1SimplifiedGeometrySink_AddLines 6 var,int #comfunc global ID2D1SimplifiedGeometrySink_AddBeziers 7 var,int #comfunc global ID2D1SimplifiedGeometrySink_EndFigure 8 int #comfunc global ID2D1SimplifiedGeometrySink_Close 9 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_ID2D1SimplifiedGeometrySink "{2CD9069E-12E2-11DC-9FED-001143A055F9}" #usecom global ID2D1SimplifiedGeometrySink IID_ID2D1SimplifiedGeometrySink "{}" #comfunc global ID2D1SimplifiedGeometrySink_SetFillMode 3 int #comfunc global ID2D1SimplifiedGeometrySink_SetSegmentFlags 4 int #comfunc global ID2D1SimplifiedGeometrySink_BeginFigure 5 int,int #comfunc global ID2D1SimplifiedGeometrySink_AddLines 6 sptr,int #comfunc global ID2D1SimplifiedGeometrySink_AddBeziers 7 sptr,int #comfunc global ID2D1SimplifiedGeometrySink_EndFigure 8 int #comfunc global ID2D1SimplifiedGeometrySink_Close 9 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。