马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
static void mySaveAs() { AcDbDatabase* pDb = new AcDbDatabase(Adesk::kFalse); Acad::ErrorStatus es = pDb->readDwgFile(L"c:\\temp\\In.dwg"); assert(es == Acad::eOk);
6 y6 ?3 U4 q: t3 K2 [! u) W) e/ |// get the block table AcDbBlockTable *pBlockTable; es = pDb->getBlockTable(pBlockTable, AcDb::kForRead); if (es != Acad::eOk) { return; } // get model space AcDbBlockTableRecord *pBlockTableRec; es = pBlockTable-> getAt(ACDB_MODEL_SPACE, pBlockTableRec, AcDb::kForWrite);
6 O9 W- h) _9 n& |( o+ `. }if (es != Acad::eOk) { pBlockTable->close(); return; }
2 z- L4 i+ L" r2 Y* ipBlockTable->close(); // create a new entity
$ z( x* I& [' l$ d% m8 q3 t8 ]; ]AcDbCircle *pCircle = new AcDbCircle(AcGePoint3d(0,0,0), AcGeVector3d(0,0,1),100);
6 [; M5 g# k n7 A' U// add the new entity to the model space AcDbObjectId objId; pBlockTableRec->appendAcDbEntity(objId, pCircle); 9 e0 V* Q3 u3 r
// close the entity pCircle->close(); // close the model space block pBlockTableRec->close();
4 |, x% g7 P$ N; }3 L// save as to the new drawing es = pDb->saveAs(L"c:\\temp\\Out.dwg"); assert(es == Acad::eOk); delete pDb; } 转载自:http://www.colinchou.com/?p=308
7 K, m" e* o' D) f' A* z+ A |