排砖是建筑行业中花费时间最多的工程,如何提高排砖效率是众多砌体工程中需要考虑的项目。而在BIM技术的帮助下,我们可以通过自动排砖,提高墙体质量,稳定施工的进行,提高施工效率。接下来就让我们一起来看看如何利用软件来进行自动排砖。
1、方法介绍
用Revit建模时,在不依赖插件的情况下对砌体结构进行二次深化是比较复杂和繁琐的,本文介绍如何利用Dynamo(以下简称Dy)编程快速的进行常见砌体墙的排砖深化设计,该方法具有参数化、自动化的特点。
在Dy中选择需要进行二次深化的墙体,并且加载砌块族。可利用Excel或者在Revit中定义砌块尺寸,并且在Dy中读取。在选取完墙体后提取出墙体的6个面并根据其法向向量确定墙体的底面从而进一步提取出底面的轮廓线。
图1选取轮廓线
2、操作方法
然后再根据提取出来的轮廓线计算出墙体角度。由于Dy的功能限制只能利用其中自带的PythonScript节点,利用Python语言进行简单的数学运算,推算出墙体平面角度。
图2PythonScript节点
确定好角度以后接下来再根据上面确定的轮廓线确定砌块的起始点。如果墙体为非垂直布置先根据长度选择出底面轮廓线的长边再根据两个长边中点的Y值确定出墙体的下侧边缘线。如果墙体为垂直布置,则根据长边中点的X值选择左侧边缘线。可以利用python进行下数据筛选。
图3根据长边确定插入参照线
接下来找出边缘线的起点和中点并定义砌块间的灰缝厚度。本案例的砌块尺寸和灰缝厚度是用Excel控制的。所以在Dy中引用了Execl的数据。
图4读取Excel数据
本案例设定的为奇数排砌块以墙的左侧端点开始砌筑,偶数排在奇数排左侧端点砌块的一半处开始砌筑。奇数排砌块的点的分布规律为“左侧端点+砌块长度+灰缝厚度”但由于在端点处需要减去一块砖的长度。这样的设置是为了防止在最后一个插入点距墙的端点的距离小于砌块长度导致最后一个砌块超出墙体。
利用Curve.Extend模块设定了插入点的起始点到插入点终点的长度,利用Curve.PointsAtSegmentLengthFromPoint节点,每个点的间隔按照“砌块长度+灰缝厚度”进行排布,排布之后再根据墙体底面的Z值和墙体的“无连接高度”再根据“砌块高度+灰缝厚度”进行竖向排列。偶数排下面就不在赘述。
注:这里要注意奇数排和偶数排之前的间隔关系。上面所说的砌块均为标准砌块。
图5确定插入点
Revit模型中插入好砌块族,然后根据Excel提供的砌块尺寸对砌块族的参数进行定义。这里面我从Dy的服务器里面下载了“Clockwork”节点包,调用了里面“FamilyType.Duplicate”节点。这个节点的功能跟Revit中编辑类型内的复制功能相同。
根据砌块的尺寸,将数值转换成String,然后对通多Duplicate命令复制的族进行重命名。再根据砌块的尺寸,通过Element.SetParameterByName对构件赋予参数值。
然后根据插入点放置砌块族,我们之前算出了墙体的角度。然后再根据墙体的角度旋转所插入的族。这样标准砌块的排布就可以在模型中自动生成了。
图6在Revit中插入标准砌块效果
下一步就是需要把空白区域用非标砌块补齐。以偶数排为例,墙体左侧空白处起点为墙体的左侧端点。Z值与偶数排的Z值相同。然后生成补齐墙体左侧的插入点。砌块长度为左侧端点到“第一个砌块起点的长度-灰缝厚度”。宽度和高度与标准砌块相同。
墙体右侧空白区域非标砌块的插入点为,偶数排最后一个砌块的插入点再向右侧端点处延伸“标准砌块长度+灰缝厚度”,Z值与偶数排相同。砌块长度为插入点到端点的距离,宽度与标准砌块相同。
确定好各个点的位置以及非标砌块的尺寸后根据之前讲述的方法插入砌块族即可。奇数排方法相同,不再赘述。
图7参数化自动生成的砌体墙体
3、方法总结
利用Dynamo进行砌体结构的二次深化。其主要思路就是寻找出起始点,然后根据砌块的尺寸和灰缝的厚度进行排列插入点,再根据插入点放置族。然后再根据墙体的角度对砌块进行旋转。
本案例也有很多不足之处。例如是否有腰梁、马牙搓等等。但是也能大大减少工作人员的一部分工作量。
转载请注明来源本文地址:https://www.tuituisoft/blog/21333.html