AddVault メソッド

構文

BOOL AddVault(DOUBLE dTop, DOUBLE dTopH, DOUBLE dTopOffset, DOUBLE dFlatten,
VARIANT & vVertex);

ヴォールト屋根を追加します。

パラメータ

dTop
上端の基準高。
dTopH
上端の最上部高。
dTopOffset
基準辺から最上部までの水平距離。
dFlatten
扁平率。
vVertex
(x, y) 頂点列。型は VT_R8 | VT_ARRAY にしてください。

戻り値

ヴォールト屋根を追加できた場合 0 以外を返します。できなかった場合は 0 を返します。

使用例

// C++ sample
// 間取りオブジェクトへ接続
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 = 8;
bound[0].lLbound = 0;
SAFEARRAY * pArray = SafeArrayCreate(VT_R8, 1, bound);
double * pVar;
SafeArrayAccessData(pArray, (void**)&pVar);
double dVertex[8] = {0.0, 0.0, 10000.0, 0.0, 10000.0, 10000.0, 0.0, 10000.0}; 
for(int i=0; i < 8; ++i){
	pVar[i] = dVertex[i];
}
VARIANT v;
v.vt = VT_R8 | VT_ARRAY;
v.parray = pArray; 
long lRet = m_MadoriDoc->AddVault(1000.0, 2000.0, 5000.0, 1.0, v);
SafeArrayUnaccessData(pArray);
if(!lRet){
	// エラー
	return;
}
// JavaScript sample
function rgb(r, g, b){
	var col = r + (g << 8) + (b << 16);
	return col;
}

var doc = new CMadoriDoc();
var v = [0.0, 0.0, 10000.0, 0.0, 10000.0, 10000.0, 0.0, 10000.0]; 
var result = doc.AddVault(1000.0, 2000.0, 5000.0, 1.0, v);
alert(result);