找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Revit利用Dynamo实现自动排砖

[复制链接]

5280

主题

5397

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
17926
2920 BIM二狗子 发表于 2019-12-27 09:09:29

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

序言:在Revit中有很多重复性的工作要做,dynamo在这方面有着得天独厚的优势,所以Revit+dynamo就可以解决很多重复的工作,但是这里分享的案例都是针对于当前项目的,这里我会尽量把过程中重要的地方给大家说清楚,大家可以用其中有用的部分或者有用的方法来应用到自己的项目中。【大家可以随意转发及转载,但是转载的时候请保留公众号二维码及原文链接,谢谢!】

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

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

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

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

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖

Revit利用Dynamo实现自动排砖


原文地址:https://www.ifbim.com/4994.html  可在原文下载附件
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表