JerryGPS 发表于 2005-3-23 15:26:00

怎样将图块拷贝到另外一个图形文件中?

目的:从当前的图形文件拷贝已有图块到到另外一个图形文件中,并且在Model_space中创建一个图块引用:


参数:szCurFileName:另外一个图形文件名,szBlockName:图块名,pSourceDatabase:当前图形文件的指针。


程序:


AcDbDatabase *pDb=new AcDbDatabase(Adesk::kFalse);<BR>        if(pDb-&gt;readDwgFile(szCurFileName,_SH_DENYRW)==Acad::eOk)<BR>        {<BR>                AcDbObjectId newId;<BR>                es=pDb-&gt;insert(newId,szBlockName,"Add"+szBlockName,pSourceDatabase);<BR>        }


        AcDbBlockTable *pTable;<BR>        pDb-&gt;getBlockTable(pTable,AcDb::kForRead) ;<BR>        AcDbObjectId oldId;<BR>        if(pTable-&gt;getAt("Add"+szBlockName,oldId)==Acad::eOk)<BR>        {<BR>                       AcDbBlockReference *pRef =new AcDbBlockReference;<BR>                       pRef-&gt;setBlockTableRecord(oldId);<BR>                       pRef-&gt;setPosition(AcGePoint3d(0,0,0));


                       AcDbBlockTableRecord *pModel;<BR>                       pTable-&gt;getAt(ACDB_MODEL_SPACE,pModel,AcDb::kForWrite);<BR>                       AcDbObjectId refId;<BR>                       es=pModel-&gt;appendAcDbEntity(refId,pRef);<BR>                       pRef-&gt;close();<BR>                       pModel-&gt;close();<BR>               <BR>        }<BR>        pTable-&gt;close();<BR>        delete pDb;


结果:打开szCurFileName所指的图,没有图块,也没有图块引用,怎么回事?


问题出在哪?
页: [1]
查看完整版本: 怎样将图块拷贝到另外一个图形文件中?