基于Dynamo的族构件精准放置建模方法研究.pdf
《基于Dynamo的族构件精准放置建模方法研究.pdf》由会员分享,可在线阅读,更多相关《基于Dynamo的族构件精准放置建模方法研究.pdf(6页珍藏版)》请在咨信网上搜索。
1、第 15 卷 第 3 期2023 年 6 月Vol.15 No.3Jun.2023引言路桥 BIM 是构建智慧交通的基础1,高效率、智能化的路桥 BIM 建模对于长周期、大任务量的生产设计与施工运营管理具有重要意义2。因此,探索一种路桥 BIM 高效建模方法成为路桥工程领域数字化建设的研究热点3。目前,根据标高与轴网进行定位放置常规族构件的传统路桥 BIM 建模方式(下文简称传统手工建模方法 M1)效率低,不具有构建与批量处理形体扭曲度高的复杂族功能,且在缓和曲线段建模过程中存在以直代曲的误差4,5。虽然部分学者利用 Dynamo 编程技术对手工建模方式进行了改进,将族的放置点里程号进行了标识
2、与分类识别(下文简称奇偶列分类建模方法M2),实现了族构件批量旋转放置建模,但其未考虑路拱坡度,族构件放置精度较低6,7。针对以上问题,本文提出了由数据驱动的新型BIM 智能建模方法(下文简称智能建模方法 M3),基于 Dynamo 平台进行常规功能节点、DesignScript 代码块与自定义 PythonScript 节点端口匹配,实现“族”精确放置程序设计。首先,通过 DesignScript 代码块与常规功能节点结合进行数据读取,利用 PythonScript 节点调用 Revit.API 第三方库,将公用函数封装成函数节点进行参照点坐标系修正。然后通过 PythonScript 节点
3、遍历中心线里程列表,依次调整族的放置参照点,从而使族构件实现批量精确定位放置。1 基于 Dynamo 高精度定位的自适应族放置程序设计本文基于自适应嵌套族的放置程序设计主要分为三个阶段:(1)基于常规功能节点与代码块串接的路桥中心线数据源处理程序设计;(2)基于常规功能节点与代码块串接的自适应嵌套族数据源处理程序设计;(3)基于自定义 Python Script 节点的嵌套族参照点坐标系修正程序设计。1.1 路桥中心线数据源处理程序设计路桥中心线数据源的创建及数据读取和处理程序是开展自动化离散放置族构件的 BIM 设计工作基础8,9。以 Dynamo 为设计平台,利用 File.Path 节点
4、获取桥梁中心线桩号的数据源文件存储路径,并将文件路径作为参数传入 Files.FromPath 节点,该节点通过文件路径获取并传出文件对象。利用 Data.ImportExcel 节点基于 Dynamo 的族构件精准放置建模方法研究王茹珍 王庆国王茹珍 王庆国(武汉科技大学 汽车与交通工程学院,武汉 430081)【摘 要】【摘 要】针对路桥 BIM 建模过程中沿线离散放置“族”的传统方法存在自动化水平低、生产成本高、族构件定位精度低、放置偏差大等问题,本文依托 Dynamo 可视化编程平台提出了一种由数据驱动族构件精确定位放置的新型 BIM 智能建模方法。通过自适应嵌套族旋转放置程序设计,对
5、预放置族进行参数数据处理与局部坐标系修正,实现自适应常规模型嵌套族的精准定位放置。以某桥梁项目中路灯及护栏的自适应嵌套族构建与放置为例进行验证,实验结果表明:本文所提智能建模方法相对于手工建模方法,能够有效避免人工放置误差,提高放置精度;本建模方法所用程序相对于传统奇偶列分类建模程序的平均运行时间减少约 60%。这一改进可以推进 BIM 自动化建模过程中精确放置“族”技术的广泛应用,加快路桥等线性工程领域的 BIM 建设进程。【关键词】【关键词】路桥工程;BIM;数据驱动;自适应常规模型嵌套族【中图分类号】【中图分类号】TU17 【文献标识码】【文献标识码】A 【文章编号】【文章编号】1674
6、-7461(2023)03-0027-06【DOI】【DOI】10.16670/11-5823/tu.2023.03.05【基金项目】国家自然科学基金(编号:41571396)【第一作者】王茹珍(1997-),女,硕士研究生,主要研究方向:BIM 建模与智能交通系统。【通信作者】王庆国(1974-),男,博士,教授,主要研究方向:智能交通系统。28获取文件对象逐桩坐标表中的坐标信息和对应桩号的高程信息,将其传入 List.Deconstruct 节点,同时生成含每列数据字段名的第一项列表和含有设计数据的其余项列表两部分。含有设计数据的列表通过 List.Transpose 节点实现列表行列互换
7、(设计数据转置为按列分类的数据列表),空值占位保证列表转化前后始终为矩形形态,避免后续节点读取数据失败而报错。由 Code Block 节点根据占位符参数读取相应数据列表,由 Point.By Coordinates节点读取 x、y、z 参数相对应的笛卡尔坐标数据列表,并通过笛卡尔坐标系形成点规范表数据,按照桩号生成一系列路线中线点数据。利 用 PolyCurve.Bypoints 节 点 将 含 有 点 数 据列表的道路中线点拟合为多段线,再利用 Curve.PointsAtEqualChordLength 节点等间距分割,并通过List.NormalizeDepth 节点实现起始与终点坐标
8、整合,将其传入 NurbsCurve.ByPoints 节点进行折线点间插值,最终在 Revit 界面生成具有均匀局部坐标系的相对光滑桥梁中心线。基于 Dynamo 编程节点的中心线桩号数据处理程序如图 1 所示。图 1 道路数据处理程序图1.2 自适应嵌套族参数处理程序设计在确定族构件沿路桥中心线放置的里程数据源后,还需分析路桥上部结构、下部结构和附属结构的族类型建造方式,确定其与路桥中心线正向沿线方向的旋转角度和距离参数,进行族类型参数数据源的读取与处理程序设计。利用 Files.fromPath 节点调取族类型设计数据,Data.ImportExcel 节点读取外部 Excel 文件中处
9、理完成的设计数据10。通过 List.Deconstruct 节点生成含每列数据字段名的第一项列表和含有设计数据的其余项列表两部分。将含数据字段名的列表传入 List.TakeItems节点,使 Code Block 节点值为负一,读取倒数第一列编码数据字段名,随后将编码数据字段名通过 String from Object 节点转化为字符串格式,作为参数名称传入 Element.SetParameterByName 节点的 ParameterName接口,从含有设计数据的其余项列表中读取编码数据,作为参数值传入 Element.SetParameterByName 节点的Value 接口。利用
10、 Code Block 节点读取经转置的设计数据其余项列表中起始桩号、里程号、族类型名称和族类型旋转角度,并设计里程号减去起始桩号的值为 python 节点预放置的族实例距离起点的距离参数。基于 Dynamo 编程节点的族类型数据源处理程序如图 2 所示。图 2 族类型数据处理程序图1.3 自适应嵌套族局部坐标系旋转修正程序设计根据族类型沿线放置里程及其与中心线正向沿线的旋转角度和距离参数进行排布放置的族构件精度较低11,12。本文在 Dynamo 平台中进行 python script 节点的自定义,批量计算每一里程桩号的局部坐标,使自适应族根据参照点局部坐标进行精确定位并放置。旋转定位放置
11、方法流程如图3所示,设计步骤如下:(1)通过相邻旋转轴正方向一点(非原点)与原点坐标值之差判定族类型旋转方向,差值为正,则为顺时针方向,差值为负,则为逆时针方向;(2)利用放置点处的平面坐标方位角、纵向倾角及其在对应局部坐标系与世界坐标系轴向量上投影的夹角,进行曲线方向方位角计算;(3)通过族类型的 ID 标识,将族实例绕世界坐标系对应轴进行自适应参照点旋转。通过以上步骤,能够使自适应参数族在线性空间上通过捕捉自适应点坐标系实现自由旋转,从而根据道路中心线完成自动化布置任务。鉴于程序具有继承性、可移植性与稳定性等特性,对此算法进行封装处理。封装该节点时将输入接口设定为缓和曲线、族类型名称列表、
12、族类型旋转角度列表、绕 X 轴旋转布尔值和绕 Y 轴旋转布尔值等参数,然后添加调整族参数,即输出接口设置为构件,并通过 Element.SetParameterByName 将类型编码参数自动批量化添加至族类型属性信息。封装后的节点程序设计对比传统根据奇偶列分类标识放置族构件的 Dynamo 程序解决了代码块冗余、族构件定位放置精度低等问题,传统29基于 Dynamo 的族构件精准放置建模方法研究奇偶列分类建模方法 M2 的程序设计如图 4 所示,本文所提智能建模方法 M3 的旋转定位放置程序设计如图 5 所示。开始里程号 I=0遍历自适应族里程号列表判断族类型是否被激活?激活族类型是否需要曲
13、线方向角计算?计算平面方位角与竖向倾角判定旋转方向识别族类型ID放置族结束i=i+1否是是否是图 3 旋转定位放置方法流程图图 4 基于奇偶列分类放置族的程序设计图图 5 旋转定位放置方法程序设计图2 实验验证与分析 为验证所提智能建模方法 M3 的建模放置精度与程序运行时间效率提升效果,本文以某桥附属结构 BIM中路灯及护栏的参数化自适应嵌套族构建与放置为例,运用传统手工建模方法 M1、奇偶列分类建模方法 M2和智能建模方法 M3 进行对比实验。程序运行硬件环境:CPU 为 AMD R7-5800H;主频:3.20GHz;内存:16GB;运行软件:Revit2020_Dynamo2.5.0。
14、2.1 参数化自适应嵌套族的构建本文在传统“公制常规模型”基础上,借助“自适应公制常规模型”模板创建桥梁附属结构路灯、护栏的嵌套族。即新建自适应公制常规模型样板项目,设置自适应参照点。基于连接空间中参考点放置线的设计方法,通过调整自适应参照点工作平面,对放置位置进行合理改变。鉴于实例坐标系自适应点的坐标不贴合体量环境的坐标系和贴合放置点处的坐标系,而是保持自适点自身的 XYZ 轴方向不变,因此将常规族路灯、常规族护栏载入自适应常规族项目中,设定参照点 1 为坐标系原点,使其自适应并定向为实例坐标系(xyz),添加材质,设定放置点为自适应点从而形成路灯、护栏嵌套族,分别如图 6 图 7 所示。由
15、于自适应嵌套族的建模核心是参数的设计和绑定,参数设定的主要目的是通过调控相应参数,高效驱动族类型其位置、数量、空间尺寸等属性信息的改变,使模型有唯一对应解的过程13,14。因此本文采用连接空间中自适应参考点,将放置线参照对齐锁定,进行详图族中相关参数与构件参数关联交互,自适应路灯、护栏嵌套族参数关联图分别如图 8 图 9 所示。图 6 路灯嵌套族图 7 护栏嵌套族30图 8 路灯参数关联图图 9 护栏参数关联图2.2 由数据驱动的中心线生成在初始数据读取与处理模块,本文设计的可视化节点程序采用控制点(路灯/护栏放置对应的中心线点)生成要素线,桥梁中心线确定桥梁走向的建模思路。首先对族的几何、位
16、置等信息的逻辑关系及算法结构进行分析,创建了含有嵌套族的族名称、起始桩号、里程号、及偏转角度等关键信息的 Excel 表格,自适应嵌套族路灯和护栏的部分族数据源创建分别如表 1 表2 所示。其次通过某桥梁工程项目建筑平面施工图中的道路中心线桩号里程信息和高程信息,提取出控制点的x、z坐标值,然后通过对嵌套族的关联参数进行分析。由于本项目中嵌套族路灯放置点高程参数 h1 为 0.8m,放置点距中心线水平距离参数 l 为 9m,即自适应族放置点沿 y 方向偏移 x 轴规范距离 9m,因此不需要读取参数 L,即桥梁中心线南北方向偏移值默认取 0,控制点 y 坐标值为 0;嵌套族护栏放置点高程参数 h
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Dynamo 构件 精准 放置 建模 方法 研究
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。