如何解决在Revit中无法使图元保持连接的问题?通常在使用Revit绘图时,很多构件需要连接和剪切,可用连接或剪切命令,但如果对繁多的构件都去手动操作,那将是恐怖的工作量,本期以墙体连接为例,介绍如何自动识别我们需要连接的图元,没错我们使用的工具还是Dynamo(插件也可以做,不过个人不喜欢用插件),实现这个功能的关键思路两点,一是墙体识别,二是调用Revit的连接命令。
一、搭建一个智能识别需要连接图元的程序。
要点分析:
1、其实就是对所有的墙体选择后,对我们需要连接的墙体过滤归类。
2、智能识别的思路就是我们对所有选中的墙体先判断他们的位置,关键节点为dynamo自带的Element.GetLocation(这里我们对这一节点做简单额介绍,这一节点无法识别轴网以及参照平面的位置,对与我们自己建的族输出为一个具体的点位置,对于墙体识别的结果是一条直线)。之后我们求得到墙体位置线的向量,并对本向量旋转。
3、对下面垂直与墙体的线做是否相交的判断处理,大家可能会说会重复计算,这个问题后面会处理,第二个截图中的文字也就是说我们实际在做装饰装修工程的时候需要连接的墙体可能是大于两层的,两层以上的程序都会自动连接。
二、搭建一个智能识别需要连接图元的程序
对分好组的墙体做连接处理使用了clockwork节点包的Element.Geometry,当然我们可以将需要连接的墙做Unwrap处理,之后调用revit的连接GeometryUtils.Geometry。
转载请注明来源本文地址:https://www.tuituisoft/blog/8168.html