时间:2021-07-01 10:21:17 帮助过:25人阅读
 
如果两个数据库合并时发生冲突(例如两个数据库有相同的线型名),则在控件中使用目标数据库的数据。
    
下面的函数与标准的图形插入命令等价:
    
Mcad::ErrorStatus McDbDatabase::insert(McDbObjectId& blockId, LPCTSTR pBlockName, McDbDatabase* pDb);
 
Insert function
    
作用:将一个数据库复制到调用这个成员函数的数据库中。
    
接口:Mcad::ErrorStatus insert(
McDbObjectId & blockId,
LPCTSTR pszBlockName,
McDbDatabase* pDb,
bool preserveSourceDatabase = true,
bool isUpdataSameNameBlock = true);
    
参数:
    
| 名称 | 说明 | 
|---|---|
| blockId | 返回新插入的图块表记录id | 
| pszBlockName | 新插入的图块表记录名,图块为空时,就把文件中所有图块都引进到当前图纸中 | 
| pDb | 插入的数据库指针 | 
| preserveSourceDatabase | 暂没使用 | 
| isUpdataSameNameBlock | 如果插入的数据库的图块名与当前数据库的图块名同名,需要不需要重新更新该图块 | 
    
返回值:如果成功返回Mcad::eOk,如果传递的数据非法则返回Mcad::eInvalidInput。
    
参考例程:
    
AcDbDatabase db(Mdesk::kFalse );
     if( db.readDwgFile( sBlkFileName ) != Acad::eOk )
     {
      return FALSE;
     }
     if ( pDatabase->insert( blkRecId, sBlkName, &db ) != Acad::eOk )
     {
      return FALSE;
     }
 
这个函数将实体从输入数据库的模型空间复制到指定的块表记录中,同时返回新块表记录的ID。
CAD插入一个数据库
标签:个数 ack 数据库复制 space 复制 ror body class 图形