Revit中如何通过柱子找到他连接的所有墙?
2014-11-13 22:42
323 查看
问题:如何通过柱子找到他连接的所有墙?
柱子和墙之间的关系无法直接通过API来获得,只能通过相交过滤间接来获得。
你可以直接用 ElementIntersectsElementFilter 或ElementIntersectsSolidFilter 这两个过滤条件类来实现。
这两个类的用法请参考RevitAPI.chm文档。
ElementIntersectsSolidFilter需要你给定一个Solid,然后就会找到与指定Solid相交的其他构件。
示例代码如下:
如此类推,你可以获取柱子的Solid,传给ElementIntersectsSolidFilter的实例来获取与柱子相交的构件,过滤出墙即可。
作者:叶雄进, Autodesk特聘二次开发咨询专家, 橄榄山软件首席研发
转载请注明原文出处:http://blog.csdn.net/joexiongjin/article/details/41090861
柱子和墙之间的关系无法直接通过API来获得,只能通过相交过滤间接来获得。
你可以直接用 ElementIntersectsElementFilter 或ElementIntersectsSolidFilter 这两个过滤条件类来实现。
这两个类的用法请参考RevitAPI.chm文档。
ElementIntersectsSolidFilter需要你给定一个Solid,然后就会找到与指定Solid相交的其他构件。
示例代码如下:
// Find intersections between family instances and a selected element Reference reference = uidoc.Selection.PickObject(ObjectType.Element, "Select element that will be checked for intersection with all family instances"); Element element = doc.GetElement(reference); GeometryElement geomElement = element.get_Geometry(new Options()); Solid solid = null; foreach (GeometryObject geomObj in geomElement) { solid = geomObj as Solid; if (solid != null) break; } FilteredElementCollector collector = new FilteredElementCollector(doc); collector.OfClass(typeof(FamilyInstance)); collector.WherePasses(new ElementIntersectsSolidFilter(solid)); // Apply intersection filter to find matches TaskDialog.Show("Revit", collector.Count() + " family instances intersect with the selected element (" + element.Category.Name + " id:" + element.Id + ")");
如此类推,你可以获取柱子的Solid,传给ElementIntersectsSolidFilter的实例来获取与柱子相交的构件,过滤出墙即可。
作者:叶雄进, Autodesk特聘二次开发咨询专家, 橄榄山软件首席研发
转载请注明原文出处:http://blog.csdn.net/joexiongjin/article/details/41090861
相关文章推荐
- 如何通过mat从java内存dump中找到缓存对象中的所有字符串
- 小小的激动,3年另3个月,通过600名IE学员,我也几乎为所有学员都找到了工作。附如何顺利通过面试
- 如何找到指定时间段内的所有文件
- 如何通过ADO,获取一个数据库文件里面所有的表?
- 如何让两台笔记本电脑通过无线网卡连接起来
- 如何在现有通过AttachDbFilename连接的Sql Express数据库上设置membership
- 如何通过崩溃地址找到出错的代码行
- [原]使用MOTO(也许是所有非Nokia吧)手机通过CMWAP进行HTTP连接
- 如何通过崩溃地址找到出错的代码行(ZT)
- 如何通过崩溃地址找到出错的代码行
- 如何通过崩溃地址找到出错的代码行(ZT)
- 如何通过一个结构体成员变量的地址找到该结构体的首地址?
- 如何通过T-SQL获得当前连接的客户端的IP和机器名...
- 如何通过崩溃地址找到出错的代码行
- 如何通过编程得到所有窗体的标题及类名称
- 通过ADSL连接Internet的内网中如何架设VNC server
- 如何通过崩溃地址找到出错的代码行(ZT)
- jfreechart的线性图是所有的点的连接,线是连续的。如何实现间断的线性图呢?即一条线,当满足某个条件:如值为零时,线在此中断,只连接相邻的不为零的点。
- 如何实现通过IE打印窗体中的所有信息?
- 如何找到线程插入式木马通过文件对比查木马