AddLine メソッド

構文

BOOL AddLine(VARIANT & vVertex, BYTE byLineStyle, BYTE byLineWidth, OLE_COLOR ocLineColor);

線を追加します。

パラメータ

vVertex
(x, y) 頂点列。型は VT_R8 | VT_ARRAY にしてください。
byLineStyle
線種。次のいずれかの値を指定できます。
  • 0実線。
  • 1破線。
  • 2点線。
  • 3一点破線。
  • 4二点破線。
  • 5なし。
byLineWidth
線幅。
crLineColor
線色。

戻り値

線を追加できた場合 0 以外を返します。できなかった場合は 0 を返します。

使用例

// 間取りオブジェクトへ接続
CMadoriDoc * m_MadoriDoc = new CMadoriDoc();
CLSIDFromProgID (L"MyHomeDesignerMadori.MadoriDoc", &clsid);
GetActiveObject (clsid, NULL, &pUnk);
pUnk->QueryInterface (IID_IDispatch, (void**)(&pDisp));
m_MadoriDoc->AttachDispatch (pDisp);

// 線を追加
SAFEARRAYBOUND bound[1];
bound[0].cElements = 4;
bound[0].lLbound = 0;
SAFEARRAY * pArray = SafeArrayCreate(VT_R8, 1, bound);
double * pVar;
SafeArrayAccessData(pArray, (void**)&pVar);
double dVertex[4] = {0.0, 0.0, 1000.0, 3000.0}; 
for(int i=0; i < 4; ++i){
	pVar[i] = dVertex[i];
}
SafeArrayUnaccessData(pArray);
VARIANT v;
v.vt = VT_R8 | VT_ARRAY;
v.parray = pArray;
OLE_COLOR crLineColor = (OLE_COLOR)RGB(0,0,0);
long lRet = m_MadoriDoc->AddLine(v, 0, 0, crLineColor);
if(lRet) AfxMessageBox("OK", MB_ICONINFORMATION);
else AfxMessageBox("失敗");
SafeArrayDestroy(pArray);