構文
void SetFloorConfig(long lAboveFloorNumber, long lBelowFloorNumber, double dBaseHeight, double dFloorHeight1F, double dDefWallThick, VARIANT &vFloorHeight, VARIANT &vCeilingHeight);
階数・階高・壁厚などの設定をまとめて設定します。
パラメータ
lAboveFloorNumber
地上の階数
lBelowFloorNumber
地下の階数
dBaseHeight
基礎高
dFloorHeight1F
1階床高
dDefWallThick
壁厚の既定値
vFloorHeight
階高の配列。下の階から上の階に向かって並べます。型は VT_R8 | VT_ARRAY にしてください。
vCeilingHeight
天井高の配列。下の階から上の階に向かって並べます。型は VT_R8 | VT_ARRAY にしてください。
使用例
// 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 = 6;
bound[0].lLbound = 0;
SAFEARRAY* parFH = SafeArrayCreate(VT_R8, 1, bound);
SAFEARRAY* parCH = SafeArrayCreate(VT_R8, 1, bound);
double* pVarFH;
double* pVarCH;
SafeArrayAccessData(parFH, (void**)&pVarFH);
SafeArrayAccessData(parCH, (void**)&pVarCH);
double dFloorHeight[6] = {3000.0, 3100.0, 3200.0, 3300.0, 3400.0, 3500.0};
double dCeilingHeight[6] = {2500.0, 2600.0, 2700.0, 2800.0, 2900.0, 3000.0};
for(int i = 0; i < 6; i++)
{
parFH[i] = dFloorHeight[i];
parCH[i] = dCeilingHeight[i];
}
VARIANT vFH, vCH;
vFH.vt = VT_R8 | VT_ARRAY;
vFH.parray = parFH;
vCH.vt = VT_R8 | VT_ARRAY;
vCH.parray = parCH;
m_MadoriDoc->SetFloorConfig(5, 1, 500.0, 600.0, 150.0, vFH, vCH);
SafeArrayUnaccessData(parFH);
SafeArrayUnaccessData(parCH);
// JavaScript sample var doc = new CMadoriDoc(); var fh = [3000.0, 3100.0, 3200.0, 3300.0, 3400.0, 3500.0]; var ch = [2500.0, 2600.0, 2700.0, 2800.0, 2900.0, 3000.0]; doc.SetFloorConfig(5, 1, 500.0, 600.0, 150.0, fh, ch);