Revit二次开发——车位净高分析插件思路

地下室车道、车位的净高控制 是机电管综项目的重点之一

之前有群友问到,能不能开发个车位净高分析的插件

点击加群与歌手互动

jq.qq.com

本文对插件思路可行性进行测试

测试环境 Revit2016 + VS2017

单个车位测试:
在这里插入图片描述
在这里插入图片描述
实现代码:
获取参与检测元素的集合

车位族与各元素进行碰撞检测
实际运行环境:
模型准备:深化完成的机电模型,默认2.4m净高的车位模型

在机电模型中运行插件——框选链接模型中的车位族——程序遍历每个车位族,进行碰撞检测——检测到有碰撞时,记录车位编号&Id——导出数据

Jeremy关于ElementIntersectsElementFilter和BoundingBoxIntersectsFilter的快慢对比

The building code

thebuildingcoder.typepad.com
图标

进一步探索功能
1.在机电模型检测出编号001的车位净高不足时,API后台打开链接的车位模型文档,将001车位族的族类型修改为低100mm的那个,保存并重新链接,再进行检测净高,重复执行,直到满足净高。

扫描二维码关注公众号,回复: 11619818 查看本文章

直接得到下图效果:
在这里插入图片描述
参考叶雄进这篇博客:

用API能否修改Revit链接模型

blog.csdn.net

2.程序将车位的净高数据导出Excel,自动生成表格进行汇总统计
在这里插入图片描述
需要注意的
法兰/卡箍接口的管件,会对其boundingbox的范围有直接影响.
面贴合的情况(如图1第二根风管),也会被计入碰撞.

遇到的问题
如果车位族只是简单的模型线+模型文字的情况,可以获取四个顶角,创建一个临时的solid,再获取其boudingbox来进行碰撞检测
在这里插入图片描述

参考大气象的这篇文章:

Revit API创建几何实体Solid并找到与之相交的元素

www.cnblogs.com

总结
到此,可以证明此思路的可行性,所以后期应该会写出来

另外,后面可能会做车位族翻模的功能,翻模…

最后,想第一时间获取插件,欢迎加群交流!

关于歌手

猜你喜欢

转载自blog.csdn.net/imbatuco/article/details/102802751