構文
BOOL AddUsage(VARIANT &vVertex, long uUsage, double dKenpei, BOOL bBoka, BOOL bKado,
double dKenpeiMax, double dYoseki, double dYosekiMax, BOOL bAbsHeightSw, double dAbsHeight,
BOOL bRoadObliqSw, double dRoadObliqSlope, double dRoadObliqInfluence,
BOOL bNorthObliqSw, double dNorthObliqHeight, double dNorthObliqSlope,
BOOL bNeighborObliqSw, double dNeighborObliqHeight, double dNeighborObliqSlope,
BOOL bHLObliqSw, LPCTSTR szHLName, long nHLType, long nHLRoad,
double h1, double k1, double h2, double k2, double h3, BOOL bHLUserDefine, LPCTSTR szHLRemark,
BOOL bShadowSw, double dShadowHeight, double dShadowTime1, double dShadowTime2, BOOL bHokkaido,
double dLatitude, double dLongitude);
用途地域範囲を追加します。
パラメータ
- 0未指定
- 1第1種低層住居専用地域
- 2第2種低層住居専用地域
- 3第1種中高層住居専用地域
- 4第2種中高層住居専用地域
- 5第1種住居地域
- 6第2種住居地域
- 7準住居地域
- 8近隣商業地域
- 9商業地域
- 10準工業地域
- 11工業地域
- 12工業専用地域
- 13指定なし
- 0絶対高さ
- 1一段階斜線
- 2一段階斜線+絶対高さ
- 3二段階斜線
- 4二段階斜線+絶対高さ
- 0反対側の境界線
- 1道路の中心線
戻り値
用途地域範囲を追加できた場合 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, 5000.0, 0.0, 5000.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->AddUsage(v, 5, 60.0, TRUE, TRUE, 80.0, 200.0, 200.0,
FALSE, 0.0, TRUE, 1.25, 30000.0, FALSE, 0.0, 0.0, TRUE, 20000.0, 1.25,
FALSE, "", 1, 0, 5.0, 0.6, 0.0, 0.0, 0.0, FALSE, "",
TRUE, 4000.0, 4.0, 2.5, FALSE, 35.0 * 60.0 * 60.0, 135.0 * 60.0 * 60.0);
SafeArrayUnaccessData(pArray);
if(!lRet){
// エラー
return;
}
// JavaScript sample var doc = new CMadoriDoc(); var vertex = [0.0, 0.0, 5000.0, 0.0, 5000.0, 10000.0, 0.0, 10000.0]; var uUsage = 5; var dKenpei = 60.0; var bBoka = true; var bKado = true; var dKenpeiMax = 80.0; var dYoseki = 200.0; var dYosekiMax = 200.0; var bAbsHeightSw = false; var dAbsHeight = 0.0; var bRoadObliqSw = true; var dRoadObliqSlope = 1.25; var dRoadObliqInfluence = 30000.0; var bNorthObliqSw = false; var dNorthObliqHeight = 0.0; var dNorthObliqSlope = 0.0; var bNeighborObliqSw = true; var dNeighborObliqHeight = 20000.0; var dNeighborObliqSlope = 1.25; var bHLObliqSw = false; var szHLName = ""; var nHLType = 1; var nHLRoad = 0; var h1 = 5.0; var k1 = 0.6; var h2 = 0.0; var k2 = 0.0; var h3 = 0.0; var bHLUserDefine = false; var szHLRemark = ""; var bShadowSw = true; var dShadowHeight = 4000.0; var dShadowTime1 = 4.0; var dShadowTime2 = 2.5; var bHokkaido = false; var dLatitude = 35.0 * 60.0 * 60.0; var dLongitude = 135.0 * 60.0 * 60.0; var result = doc.AddUsage(vertex, uUsage, dKenpei, bBoka, bKado, dKenpeiMax, dYoseki, dYosekiMax, bAbsHeightSw, dAbsHeight, bRoadObliqSw, dRoadObliqSlope, dRoadObliqInfluence, bNorthObliqSw, dNorthObliqHeight, dNorthObliqSlope, bNeighborObliqSw, dNeighborObliqHeight, dNeighborObliqSlope, bHLObliqSw, szHLName, nHLType, nHLRoad, h1, k1, h2, k2, h3, bHLUserDefine, szHLRemark, bShadowSw, dShadowHeight, dShadowTime1, dShadowTime2, bHokkaido, dLatitude, dLongitude); alert(result);