Dynamo在非几何参数可视化中的应用研究
2023-09-20张爱国徐海燕沈惠
张爱国, 徐海燕, 沈惠
(南通理工学院)
1 引言
近些年,随着国家层面的大力推广,BIM技术在建筑行业中的应用越来越广泛。应用范围从最初的个别项目试点,逐步推广到新建公共建筑和大型复杂项目;应用内容也从刚开始的单专业应用,扩展到多专业协同,以及逐渐向建筑项目全生命周期应用推进。
在肯定BIM 技术发展的同时,也应直面目前所面临的问题。中国建筑业BIM应用分析报告(2021)显示,缺乏BIM人才仍是阻碍BIM技术应用的首要因素,占比高达61.91%;其次是项目人员对BIM 应用实施不够积极,占比为49.28%[1]。BIM 作为综合性技术,涉及专业多,对从业人员知识面和协作能力有很高的要求。年轻的从业者对新技术的接受能力强,能较好地掌握相关软件的应用,但是缺乏工程经验,做出来的成果不知道如何更好地应用于工程建设。有经验的技术人员由于工作任务重,学习时间有限,不能够高效利用新技术服务于生产,导致积极性不高。本文基于Dynamo可视化编程语言,探索建筑信息模型中的信息管理,为技术人员更好地利用BIM技术提供参考解决方案。
2 研究现状
黄雪刚等采用Revit二次开发,实现隧道模型中构件剪切、开洞[2]。文志彬等基于Dynamo,实现了桁架钢筋混凝土叠合板参数化设计,提高了模型创建的效率和精度,在工程实践中取得了较好的效果[3]。李东运等利用Dynamo可视化编程语言与Revit相结合,解决了T 梁桥梁建模难度大、异型结构复杂、建模速度慢等难题,提高了桥梁模型创建效率和模型的精确度[4]。李德全利用Dynamo 实现了门窗表和门窗详图的自动出图,提高了准确度和制图效率[5]。高健采用编程可视化编程语言Dynamo,实现了地下综合管廊的参数化建模[6]。石林研究了可视化编程技术在地铁车辆段工艺设备BIM 设计中的应用[7]。缪盾以斯坦福兔子和莲花石墩为例,运用Dynamo,实现了BIM实体模型创建[8]。
目前,学者的研究主要集中于Dynamo的建模功能,在信息管理和可视化方面的研究有所欠缺。为了更好地将BIM 技术的可视化服务于建筑施工,本文研究Dynamo 在建筑信息模型中非几何参数的可视化,进一步促进BIM技术的应用。
3 非几何参数可视化
3.1 案例说明
选取某工程一层部分柱作为研究对象,如图1所示,将Excel表格中的混凝土实测强度信息批量输入到对应的柱模型中,并与设计强度对比,以不同颜色显示合格与不合格图元。
图1 案例模型
本案例的主要步骤有两个,首先是利用Dynamo与Office的交互功能,把强度参数指定给模型图元;其次利用“Element.OverrideColorInView”节点用指定颜色覆盖视图中图元的颜色,具体操作如图2。
图2 混凝土强度可视化显示
3.2 数据批量输入
首先,使用“Excel.ReadFromFile”节点,配合辅助节点“File.FromPath”、“File Path”和“String”从指定Excel 表格读取所需的混凝土强度信息,通过“List.Transpose”节点把“13×2”列表转置成“2×13”的列表,利用“List.GetItemAtIndex”节点读取列表中强度值。本步骤简化了部分操作,数据是按照“柱定位标记”值的ASCII码顺序进行组织的,如果是杂乱无章数据,可以用“List.SortByKey”节点进行排序。
其次,通过“All Elements of Category”和“Categories”批量选择“结构柱”图元,此时列表按照图元“ID”值进行排序,需要“Element.GetParameterValue-ByName”节点获得图元的“柱定位标记”参数,接下来利用“List.SortByKey”节点重新排序“结构柱”图元,使其与混凝土强度值列表对应。
最后,采用“Element.SetParameterByName”节点,把混凝土强度值批量赋予对应的柱模型。为了方便程序的管理与调试,全选以上的节点创建组,名称为“数据批量输入”。节点配置如图3所示。
图3 数据输入节点配置
3.3 可视化显示
把用“Element.GetParameterValueByName”节点读取的混凝土强度值与混凝土设计值(案例中混凝土强度设计值都是30MPa)进行比较,得到的逻辑值列表作为“List.FilterByBoolMask”节点的掩码输入值,“结构柱”图元作为过滤列表,通过运算可以得到混凝土实测强度不满足设计值的“结构柱”图元列表。“Color.ByARGB”节点只输入“r”值255可以得到红颜色。红颜色和不满足设计值的“结构柱”图元列表作为“Element.OverrideColorInView”节点“color”和“element”参数的输入端,经过运算就可以实现红色显示不满足强度要求的图元,如图2 所示。如果要更精细化显示“结构柱”混凝土强度值,可以把数值关联到“Color Range”节点输入端,这样就能按颜色区间显示“结构柱”混凝土强度值。同样,为了方便程序的管理与调试,全选以上节点创建组,名称为“参数可视化显示”。节点配置如图4所示。
图4 可视化节点配置
3.4 程序优化与后台运行
为了增强程序的可读性,把软件默认的输入节点名称进行了重命名,详见表1。优化后完成的程序节点如图5 所示。程序调试没问题后,保存退出。在Revit软件中,打开模型,通过“管理”选项卡“可视化编程”面板中的“Dynamo 播放器”工具,打开已经写好的dynamo 节点程序,编辑输入所需参数,单击“运行脚本”图标就可以轻松实现程序的后天运行,如图6所示。
图5 非几何参数可视化
图6 后台运行Dynamo程序
4 结语
本文探索了Dynamo 可视化语言在信息管理中的应用,利用Dynamo与Office良好的兼容性可以快速实现BIM 模型相关信息的批量输入,在工程量大的项目中,优势极其明显。利用Dynamo可以更好地发挥BIM 技术可视化的特点,简单的节点和连线就能快速解决原本复杂的操作过程。另外,编写好的程序可以重复使用,极大提高办公效率。案例选取了工程中常见的主要参数“混凝土强度值”作为代表,进行非几何参数可视化研究,在实际应用过程中可以根据需要对其他非几何参数,如“作业人员”、“质检员”、“施工日期”等,进行可视化呈现,为管理决策提供参考。