风树 发表于 2013-10-12 21:16:53

请问一个自定义实体加入新建的AcDbDatabase的问题,问题出在哪?(以解决)

本帖最后由 风树 于 2013-10-13 20:52 编辑

//代码片段

////////////////////A段
                         AcDbDatabase *m_pDb = new AcDbDatabase(true, true);
                         Acad::ErrorStatus es = Acad::eOk;


                        AcDbBlockTable *pTab = NULL;
                     if ((es = m_pDb->getBlockTable(pTab,AcDb::kForRead))!=Acad::eOk)
                                 return FALSE;
                     AcDbObjectId modelSpaceId;
                     es = pTab->getAt(ACDB_MODEL_SPACE, modelSpaceId);
                     AcDbObjectIdArrayIdArray;
                     IdArray.append(ObjectId);/////////
                     AcDbIdMapping idMap;

///////////////////B段
                      es = m_pDb->deepCloneObjects(IdArray, modelSpaceId, idMap);

///////////////////问题描述
1、 A段代码正常,ObjectId为我传入的对象ID,正常。
2、ObjectId,传入普通对象时,B段代码正常;传入自定义实体时返回值为eWrongDatabase。

怎么原因呢,难道自定义实体还要重载什么函数才能解决这个问题???

////////////////////
暂时变通一下,用wblock



                  

页: [1]
查看完整版本: 请问一个自定义实体加入新建的AcDbDatabase的问题,问题出在哪?(以解决)