- UID
- 341
- 积分
- 1337
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2002-1-11
- 最后登录
- 1970-1-1
|
发表于 2005-5-12 10:56:09
|
显示全部楼层
- ///////////////////////////////////////////////////////////////
- // 函 数 名 : oxaGetInsertName
- // 函数功能 : 获取一个块实体的名称
- // 处理过程 :
- // 备 注 : 没有内存泄漏测试
- // 作 者 : fylinwater
- // 时 间 : 2005年1月11日
- // 返 回 值 : bool
- // 参数说明 : const AcDbObjectId id ,
- // CString &strName
- ///////////////////////////////////////////////////////////////
- bool oxaGetInsertName(const AcDbObjectId id ,CString &strName)
- {
- AcDbEntity *ent;
- Acad :: ErrorStatus es=acdbOpenAcDbEntity( ent ,id,AcDb::kForRead, Adesk::kFalse);
- if (es!=Acad::eOk)
- {
- //oxaPrint(oxaGetErrorStatusWord(es), "id-es=");
- return false;
- }
- AcDbBlockReference *aBlk=AcDbBlockReference::cast(ent);
- if (aBlk!=NULL)
- {
- AcDbObject* pObj;
- es=acdbOpenAcDbObject( pObj ,aBlk->blockTableRecord(),AcDb::kForRead,Adesk::kFalse);
- if (es!=Acad::eOk)
- {
- //oxaPrint(oxaGetErrorStatusWord(es), "aBlk-es=");
- return false;
- }
- AcDbBlockTableRecord *blkRcd=AcDbBlockTableRecord::cast(pObj);
- if (blkRcd!=NULL)
- {
- char *strname=new char[256];
- blkRcd->getName(strname);
- strName.Format("%s", strname) ;
- delete strname;
- blkRcd->close();
- }
- aBlk->close();
- }
-
- ent->close();
- return true;
- }
复制代码 |
|