指定したサイズのシートモデルを作成する方法を紹介します。
void CreateSheetModelTest() { DgnFileP pDgn = ISessionMgr::GetActiveDgnFile(); DgnModelStatus status; DgnModelP pSht = pDgn->CreateNewModel(&status, L"MySheetModel", DgnModelType::Sheet, false); if (DgnModelStatus::DGNMODEL_STATUS_Success == status) { ModelInfoR modelInfo = const_cast<ModelInfoR>(pSht->GetModelInfo()); SheetDefP pShtDef = modelInfo.GetSheetDefP(); pShtDef->SetFormName(L"ISO A2"); double uor = modelInfo.GetUorPerMeter(); pShtDef->SetSize(594*uor, 420*uor); pSht->SetModelInfo(modelInfo); } }
STEP1:GetActiveDgnFile()メソッドを使い、DGNファイルのポインターpDgnを取得します。
STEP2:CreateNewModel()メソッドを呼び出し、DgnModelType::SheetタイプのポインターpShtを作成します。
STEP3:モデル情報のmodelInfoを取得します。
STEP4:modelInfoからシート定義のポインターを取得します。
STEP5:SetFormName()、SetSize()を呼び出し、フォーム名前とサイズを設定します。
STEP6:SetModelInfo()を使い、modelInfoをセットします。