明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2785|回复: 3

【求助】如何得到特定块的AcDbBlockReference对象

[复制链接]
发表于 2012-10-11 10:00:57 | 显示全部楼层 |阅读模式
本帖最后由 cindyeee 于 2012-10-11 11:58 编辑

做一个cad插件,其中需要获取特定块的坐标位置。
(1)现在通过com方法能够能到特定块的IAcadBlock接口指针,我看acax17enu.tlh中的接口方法,应该是得到块的IAcadBlockReference接口,调用其get_InsertionPoint()方法就可以。

(2)或者我通过objectarx的向导工具建立工程后,按如下步骤得到特定块的id,但是不知道怎样获取到AcDbBlockReference对象,进而获取其坐标。
  AcDbBlockTable* pBlockTable;
  acdbHostApplicationServices()->workingDatabase()->getBlockTable(pBlockTable, AcDb::kForWrite);
  //find out whether the block existed
  if (!pBlockTable->has(blkName))
  {
   acutPrintf(_T("当前图形中未包含指定名称的块定义!"));
   pBlockTable->close();
   return;
  }

  AcDbObjectId id;
  AcDbBlockTableRecord* pBlockRec;
  pBlockTable->getAt(blkName, id);
  pBlockTable->getAt(blkName, pBlockRec);


发表于 2012-10-11 16:55:30 | 显示全部楼层
遍历即可呀,可联系我QQ:379539186
 楼主| 发表于 2012-10-11 17:21:52 | 显示全部楼层
能说得再详细点么,怎么遍历呢?
我知道块定义的名称,想找到对应的所有块参照。
多谢啦:)
 楼主| 发表于 2012-10-11 17:22:26 | 显示全部楼层
liuxu042 发表于 2012-10-11 16:55
遍历即可呀,可联系我QQ:379539186

能说得再详细点么,怎么遍历呢?
我知道块定义的名称,想找到对应的所有块参照。
多谢啦:)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 10:00 , Processed in 0.166415 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表