CAD插入一个数据库
Posted yzy0224
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CAD插入一个数据库相关的知识,希望对你有一定的参考价值。
要保存一个数据库,可以使用 McDbDatabase::saveAs() 函数。
如果两个数据库合并时发生冲突(例如两个数据库有相同的线型名),则在控件中使用目标数据库的数据。
下面的函数与标准的图形插入命令等价:
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插入一个数据库的主要内容,如果未能解决你的问题,请参考以下文章