admin管理员组

文章数量:1604455

项目场景:

        手上的Revit项目需要对CAD的一些实体对象做增删改查的操作,但是如果将CAD文件链接到Revit中做处理,会有诸多的麻烦,比如说在Revit二次开发中常用、且免费的用于处理CAD文件的dll文件是Teigha的Td_Mgd.dll,但是这个dll文件在使用过程中有诸多bug,并且有许多函数功能并没有完全开发完成,例如Entity.IntersectWith()函数。此外,这个dll文件也早已被Teigha官方抛弃了,早就不更新维护了。(Teigha现在改名为ODA了,他们官网有在售卖很多新的用于Revit,Naviswork,CAD二次开发的dll包,感兴趣的可以去看下,链接为:Home | Open Design Alliance)。所以Revit二次开发过程中,如果碰到了一些需要对CAD文件做处理的工作,可能还是需要移步到CAD二次开发。


问题描述


        这真是个费解的问题,我在接触到CAD二次开发之初,第一件想干的事就是怎么获得活动文档中某一类型的所有对象,但是搜遍全网都没有一个合理的答案,要么是通过Selection,要么就是通过Filter获得对象的。就是找不到我想要的那种一步到位的方法(哭笑),并且夹杂着各种VB、C++的资料,对我们C#选手很不友好。博主niuge No.1通过ObjectId、选择集的方式获得指定类型的实体对象,博客链接为

本文标签: 如何获得对象类型文档cad