马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
static void mySaveAs() { AcDbDatabase* pDb = new AcDbDatabase(Adesk::kFalse); Acad::ErrorStatus es = pDb->readDwgFile(L"c:\\temp\\In.dwg"); assert(es == Acad::eOk);
+ j* R: V/ R; p1 R// 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); : _: I$ G1 D& x$ Y8 }8 D% P( \
if (es != Acad::eOk) { pBlockTable->close(); return; } 8 b* j$ G, `9 D- c6 s
pBlockTable->close(); // create a new entity" O$ @4 e: z. i! z5 R6 s7 u4 j. R
AcDbCircle *pCircle = new AcDbCircle(AcGePoint3d(0,0,0), AcGeVector3d(0,0,1),100);
& m. m8 l; F. q! V) e E9 u// add the new entity to the model space AcDbObjectId objId; pBlockTableRec->appendAcDbEntity(objId, pCircle);
( Y; E4 @; @& h* F+ D N// close the entity pCircle->close(); // close the model space block pBlockTableRec->close(); / w i( w, P" A) E: r3 P
// 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
' Z& o5 p( _, O% d$ I7 H |