掌桥专利:专业的专利平台
掌桥专利
首页

一种钢筋断料节点信息的实体化表达方法

文献发布时间:2023-06-19 11:39:06


一种钢筋断料节点信息的实体化表达方法

技术领域

本发明属于建筑信息模型(Building Information Modeling,BIM)的建模技术领域,具体而言,涉及一种钢筋断料节点信息的实体化表达方法。

背景技术

近年来,建设行业利用云计算、大数据、物联网、BIM等技术逐步助力工程项目的精细化设计、施工与管理。钢筋工程作为工程项目的核心之一,传统方式下的钢筋是通过二维图纸表达,信息集成度低,技术交底繁琐,未能实现钢筋的精细化管理,使得钢筋材料成本损耗量大且浪费严重。随着建筑信息技术的发展,钢筋三维模型作为钢筋工程精细化管理的数字载体,基本实现了对钢筋实体的信息化管理,然而对于钢筋间的连接节点,主要指钢筋断料节点信息的表达仍有不足。目前钢筋断料信息基本体现在钢筋下料表中,仅仅通过文本表格进行表达,无法满足断料节点的可视化与信息化。具体表现在1)断料节点位置在三维模型中未能可视化;2)断料节点处的钢筋连接方式,如搭接、焊接、螺纹连接等未能有效表达。因此,如何在保证钢筋消耗量最低的情况下,在钢筋建模阶段便解决钢筋断料节点信息的实体化表达是亟待解决的问题。

发明内容

为了克服上述现有技术存在的问题,本发明的目的在于提供一种钢筋断料节点信息的实体化表达方法,能够在钢筋建模阶段中引入钢筋断料优化算法,降低钢筋消耗量;用算法输出的断料数据定位钢筋断料节点位置,并创建球形实体族表征钢筋断料节点,实现节点的可视化;在球形实体族中添加搭接、焊接或螺纹连接的类型属性,实现节点信息的实体化表达;此方法基于Dynamo与Revit平台,通过在钢筋建模过程中将断料优化后输出的数据集与球形实体族的定位、创建进行关联,具有方法步骤简捷标准、数据化建模效率高、精准性好及适用面广的优点。

为了实现上述目的,本发明采用如下技术方案:

一种钢筋断料节点信息的实体化表达方法,具体包括以下步骤:

步骤一、建立钢筋中心线,获取钢筋长度

结合工程图纸,在CAD软件中绘制钢筋中心线;绘制方式为捕捉钢筋二维图元沿长度方向的中心点连接成中心线;通过Revit插入选项卡的“导入CAD”命令将钢筋中心线图纸导入到Revit软件中;通过Revit“转换线”功能将钢筋中心线的详图线属性转化为模型线属性,并通过Select Model Elements模块导入到Dynamo中;通过Element.GetParameterValueByName模块获取每条钢筋中心线的长度,形成钢筋长度数组,即目标钢筋长度数组(p1,n1;p2,n2;…),其中p为目标钢筋编号,n为编号对应下的一根目标钢筋长度;

步骤二、建立目标钢筋断料节点数据集

S1建立断料优化算法的Py函数包

采用Python语言描述:

1)将步骤一得到的目标钢筋长度数据集按照钢筋长度由大到小进行排序,形成数的数据集;

2)依据S1第1)步形成的数据集,对规格钢筋下料处理,用于形成目标钢筋;当第一根目标钢筋长度小于规格钢筋长度,直接以目标钢筋长度为基准,切割规格钢筋形成第一根目标钢筋;当第一根目标钢筋长度大于规格钢筋长度,用目标钢筋长度对规格钢筋长度求余数,以余数长度为基准切割规格钢筋,并记录此根目标长度与规格钢筋长度的商值,即完成第一根目标钢筋的材料准备;规格钢筋经一次切割后,剩余部分作为二次钢筋使用,放在二次钢筋数据集中,供下次判断使用;

3)当准备第二根目标钢筋的材料时,首先检查二次钢筋数据集中是否有足够剩余长度的钢筋供使用;若二次钢筋数据集中有满足长度的钢筋,则从该二次钢筋中切割下来,剩余长度继续作为二次钢筋,并更新数据集;若无满足长度的钢筋,则从新的一根规格钢筋中切割,剩余长度继续作为二次钢筋,并更新数据集;完成第二根目标钢筋的材料准备;

4)按此规律不断循环,直至完成全部目标钢筋的材料准备;形成目标钢筋断料节点数据集,即由多个钢筋组成目标钢筋的长度集合:[1,(a1,b1,…);2,(a2,b2,…);3,(a3,b3,…);…];其中1、2、3为目标钢筋编号,a1、b1为钢筋长度,此数组之和为目标钢筋的长度;同时将目标钢筋长度和除以所用规格钢筋长度和可得到规格钢筋的利用率;

S2生成断料节点的数据集

将S1中的Py函数包嵌入到Dynamo平台中的PythonScript模块;PythonScript模块有输入端、优化算法与输出端三部分;输入端包含规格钢筋长度,目标钢筋长度数组;优化算法是在PythonScript模块中嵌入步骤二中S1的Py函数包;输出端是最终形成的目标钢筋断料节点数据集;

步骤三、创建断料节点实体模型

结合目标钢筋断料节点数据集,沿着每个目标钢筋的组成长度逐一通过Sphere.ByCenterPointRadius模块创建球形节点;并通过DirectShape.ByGeometry模块对其实例化,转化为属于Revit平台的球形实体族,随后在球形节点族中通过Element.SetParameterByName模块添加节点连接信息属性,实现断料节点信息的实体化表达;

步骤四、建立具有断料节点信息的钢筋模型

在Dynamo中,步骤一中建立的钢筋中心线是以属性为Curve的数据集存在,将此数据集直接与Rebar.ByCurves模块中的Curve输入端连接,沿着钢筋中心线自动创建钢筋,完成带有断料节点信息的钢筋信息模型。

所述步骤二S1第2)步中形成目标钢筋的顺序第一根目标钢筋长度最长,顺次进行。

步骤二S2所述Py函数包嵌入到平台中的PythonScript模块的嵌入方式为:将Py函数包所在的地址导入到系统的环境变量中,即在模块中加入“DLLocation=r"D:\‘DL函数的地址’";”、“sys.path.append(DLLocation);”两行代码。

步骤三所述的球形节点的半径长度自主输入。

本发明的有益效果为:

1)在Dynamo平台中嵌入断料优化算法的Py函数包,实现钢筋利用效率的最大化。

2)将钢筋断料节点信息与球形实体族关联,实现钢筋断料位置的可视化与节点信息的实体化,便于钢筋施工过程的检查与审核,为后续钢筋各类节点的实体化表达提供了新的思路。

3)标准化的钢筋断料数据集,模块化的Dynamo节点,自定义的球形实体族可以快速精确地定位、调整钢筋断料的位置。

4)可以通过不同节点实体族体现出钢筋不同的连接状态,如搭接、绑扎、焊接等,完善了钢筋模型的属性,提高了工作效率。

附图说明

图1为本发明的工作流程示意图。

图2为本发明的目标钢筋数据集图示。

图3为本发明的钢筋断料部分代码图。

图4为本发明的钢筋断料节点数据集图示。

图5为本发明的Py函数包输出结果图示。

图6为本发明的Dynamo部分节点流程图。

图7为本发明的球形实体族图示。

图8为本发明的部分钢筋信息模型图示。

具体实施方式

以下结合附图对本发明作进一步详细说明。

如图1所示,一种钢筋断料节点信息的实体化表达方法,具体包括以下步骤:

步骤一、建立钢筋中心线,获取钢筋长度

结合工程图纸,在CAD软件中绘制钢筋中心线;绘制方式为捕捉钢筋二维图元沿长度方向的中心点连接成中心线;通过Revit插入选项卡的“导入CAD”命令将钢筋中心线图纸导入到Revit软件中;通过Revit“转换线”功能将钢筋中心线的详图线属性转化为模型线属性,并利用Select Model Elements模块导入到Dynamo中;通过Element.GetParameterValueByName模块获取每条钢筋中心线的长度,形成钢筋长度数组,即目标钢筋长度数据集(p1,n1;p2,n2;…),其中p为目标钢筋编号,n为编号对应下的一根目标钢筋长度;导出Excel方便查看,如图2目标钢筋数据集图示。

步骤二、建立钢筋断料节点数据集

S1建立断料优化算法的Py函数包

代码用Python语言描述,如图3钢筋断料部分代码图,原理具体如下:

1)将步骤一得到的目标钢筋长度数组按照钢筋长度由大到小进行排序,形成数的数据集;

2)当第一根目标钢筋长度小于规格钢筋长度,直接以目标钢筋长度为基准,切割规格钢筋形成第一根目标钢筋;当第一根目标钢筋长度大于规格钢筋长度,用目标钢筋长度对规格钢筋长度求余数,以余数长度为基准切割规格钢筋,并记录此根目标长度与规格钢筋长度的商值,商值表示此根目标钢筋使用无须切割的规格钢筋的数量,即完成第一根目标钢筋的材料准备;规格钢筋经一次切割后,剩余部分作为二次钢筋使用,放在二次钢筋数据集中,供下次判断使用;

3)当准备第二根目标钢筋的材料时,首先检查二次钢筋数据集中是否有足够剩余长度的钢筋供使用;若长度足够,则从该二次钢筋中切割下来,剩余长度继续作为二次钢筋,并更新数据集;若都不足,则从新的一根规格材料中切割,完成第二根目标钢筋的材料准备;

4)按此规律不断循环,直至完成全部目标钢筋的材料准备;形成目标钢筋断料节点数据集,即由多个钢筋组成目标钢筋的长度集合,如[1,(a1,b1,…);2,(a2,b2,…);3,(a3,b3,…);…];其中1、2、3为目标钢筋编号,a1、b1为钢筋长度,此数组之和为目标钢筋的长度;为了方便查看,导出为Excel,如图4钢筋断料节点数据集图示,同时将目标钢筋长度和除以所用规格钢筋长度和可得到规格钢筋的利用率,如图5Py函数包输出结果图示。

S2生成断料节点的数据集

由于S1中的Py函数包不能通过Dynamo环境直接运行,需嵌入到平台中的PythonScript模块;PythonScript模块有输入端、优化算法与输出端三部分;输入端包含规格钢筋长度,目标钢筋长度数组;优化算法是在PythonScript模块中嵌入步骤二中S1的Py函数包;输出端是最终形成的目标钢筋断料节点数据集。

步骤三、创建断料节点实体模型

如图6Dynamo部分节点流程图,结合目标钢筋断料节点数据集,沿着每个目标钢筋的组成长度逐一通过Sphere.ByCenterPointRadius模块创建球形节点;球形节点的半径长度选用20mm,如图7球形实体族图示;由于此时球形节点为几何元素,无法加载到Revit平台中,需通过并通过DirectShape.ByGeometry模块球形节点将实例化,转化为属于Revit平台的球形实体族,随后在球形节点族中通过Element.SetParameterByName模块添加连接信息属性,实现断料节点信息沿着钢筋中心线的实体化表达。

步骤四、建立具有断料节点信息的钢筋模型

在Dynamo中,步骤一中的钢筋中心线是以属性为Curve的数据集存在,将此数据集直接与Rebar.ByCurves模块中的Curve输入端连接,沿着钢筋中心线自动创建钢筋,完成带有断料节点信息的钢筋信息模型,如图8部分钢筋信息模型图示。

所述步骤二S1第2)步中形成目标钢筋的顺序第一根目标钢筋长度最长,顺次进行。

步骤二S2所述Py函数包嵌入到平台中的PythonScript模块的嵌入方式为:将Py函数包所在的地址导入到系统的环境变量中,即在模块中加入“DLLocation=r"D:\‘DL函数的地址’";”、“sys.path.append(DLLocation);”两行代码。

步骤二所述的规格钢筋为钢筋出厂的长度,且长度视地方标准而定。

步骤三所述的球形节点的半径长度自主输入。

上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。

相关技术
  • 一种钢筋断料节点信息的实体化表达方法
  • 一种管片弧面钢筋保护层的钢筋断料和弯曲成型装置
技术分类

06120113007805