筑龙论坛-全球建筑人工程人网上交流互动社区 · BIM · BIM施工应用

[分享]Revit利用Dynamo实现自动排砖

发表于2020-05-17     335人浏览     1人跟帖     总热度:490  

Revit利用Dynamo实现自动排砖
Revit利用Dynamo实现自动排砖_1
在Revit中有很多重复性的工作要做,dynamo在这方面有着得天独厚的优势,所以Revit+dynamo就可以解决很多重复的工作,但是这里分享的案例都是针对于当前项目的,这里我会尽量把过程中重要的地方给大家说清楚,大家可以用其中有用的部分或者有用的方法来应用到自己的项目中。

Revit利用Dynamo实现自动排砖_2

适用项目:适合矩形区域,矩形外轮廓需要以左下角为起点,分别绘制横线和竖线

Revit利用Dynamo实现自动排砖_3

可能出现的问题:砌体如果排布乱,请检查【AdaptiveComponent.ByPoints】节点是否都是四个坐标点一组的情况,或者存在空项,如果是存在两个点一组的情况,把四个点成组的项目提取出来可解决问题,用【List.TakeItems】节点,如果存在空项,用【List.Clean】节点去掉空项即可,其他的问题可以留言,我会和大家一起探讨这些存在的问题。

我这里重点说思路,工程文件大家可以在文章末尾阅读原文注册免费下载。

首先我们需要前期准备“砌体宽”、“砌体高”、“缝宽”这几个CodeBlock,然后在Revit上拾取工作平面,绘制需要排砖的区域,绘制线的时候要注意起点和终点的次序。首先要获取Revit中的横线和竖线。这是节点组。

Revit利用Dynamo实现自动排砖_4

然后用砌体宽宽这个参数将横线等分,用的到节点是【Curve.PointsAtSegmentLengthFromPoint】

Revit利用Dynamo实现自动排砖_5

再把曲线的起点和终点加载等分点的列表中,获得了一条完整的点列表,用【List.Join】节点。

Revit利用Dynamo实现自动排砖_6

这一步是重点,在这些点上画圆,圆的半径是缝参数值,向量是和横线垂直的标准向量,画圆是【Circle.ByCenterPointRadiusNormal】节点。需要注意的是,如果后面砌体缝隙交错的话需要改一下标砖向量的方向,标注向量如下。

Revit利用Dynamo实现自动排砖_7

再求出横线和绘制的这些圆的交点,用【Geometry.IntersectAll】节点,再将得到的交点整理分组,并沿着竖线分割点偏移复制其他的点。竖线的分割方法和横线的是一样的。

Revit利用Dynamo实现自动排砖_8

平移复制的时候需要用起始点和竖线分割点生成向量,节点是【Vector.ByTwoPoints】,平移复制的节点是【CoordinateSystem.Translate】,过程中需要注意列表的维度。

Revit利用Dynamo实现自动排砖_9

将平移后的点两两组合,并用【AdaptiveComponent.ByPoints】节点放置四点自适应族,这里我们之前的文章说过四点自适应,不再赘述。我们就得到奇数行的砌体排布了。

Revit利用Dynamo实现自动排砖_10

偶数层的排布主要偏移参照起点和提出平移复制后的第一项点坐标集合后重新组合,其他方法和偶数层一致。

Revit利用Dynamo实现自动排砖_11

Revit利用Dynamo实现自动排砖_12

来源:Revit教程
仅作分享交流



扫码加入筑龙学社  ·  BIM微信群 为您优选精品资料、免费课程、高端讲座
分享至

分享到微信朋友圈 ×

打开微信"扫一扫",扫描上方二维码
请点击右上角按钮 ,选择 

 发表于2020-05-17   |  只看该作者      

2

Revit利用Dynamo实现自动排砖

 回帖后跳转到最后一页


分享