一种基于Dynamo+Revit的变截面连续梁桥BIM建模方法
2021-08-09马龙林丁建华
马龙林,丁建华
(中铁二局第五工程有限公司,四川 成都 610000)
0 引言
建筑信息模型(building information modeling)是在建设工程及设施全生命周期内,对其物理和功能特性进行数字化表达,并以此设计、施工、运营的过程的总称,简称BIM。BIM技术具有可视化、协调性、模拟性等特点,不仅大量应用于房建工程,同时在基础交通建程领域也广泛使用[1-3]。BIM技术的核心为信息,但是三维模型作为信息的载体,是BIM技术应用的基础。如何快速、精确的创建三维模型呢?Revit作为欧特克公司的三维建模软件,因期进入中国早,价格易接受,在国内拥有大量的基础用户,是使用最广泛的三维建模软件之一。所以,提高其在交通基础建设方面的建模效率及精度已变得至关重要。
1 Dynamo简介
Dynamo是欧特克公司推出的,内嵌于Revit的一款功能十分强大和便捷的可视化编程软件。Dynamo可以让用户通过图形化界面创建程序,不用像常规编程软件,一行行的敲代码。使建筑从业人员不必去学习大量的编程语言,只需要简单的连接预定义的功能节点,便可以轻松创建适合自己的算法程序。实现“专业的人做专业的事”。
2 dynamo+revit变截面连续梁桥BIM建模实例
2.1 项目概况
某一级公路项目,设计为分离式车道,桥面宽度12.35m,设计速度为80Km/h。K2+660.5-K2+877.5处有为一现浇变截面连续梁桥,桥跨布置为61m+95m+61m,全长217m。截面形式为,单箱双室,中支点处梁高5.5m,中跨跨中截面高2.5m,梁底按抛物线变化。
2.2 建模方法实施流程
(1)线路平曲线及设计线文件。利用Civil 3D软件和线路的曲线要素创建线路平曲线及设计线,导出AotuCAD DWG 文件后,进行整理删,保留线路的设计线和平曲线。
(2)导入线路设计线及平曲线。利用Dynamo可以拾取导入Revit的DWG图形,使用核心节点“Select Model Element”“PolyCurve.ByJoinedCurves”“Curve.PointsAtSegmentLengthFromPoint” “CurveByPoints.ByReferencePoints”将图形转换成Revit中模型线的图元。
(3)构造左右幅桥梁中心线。由于设计线路为空间曲线,但在Dynamo中的曲线偏移节点之适用于平面曲线,故需要根据几何原则构造左右幅桥梁中心线,主要思路为:第一,利用“Curve.TrimByParameter”节点截取桥梁所在桩号的平曲线及设计线;第二,利用“Curve.Offset”节点将截取的平曲线左右偏移,第三、利用“Curve.Extrude”节点将偏移后的曲线和截取的设计线分别向上和向左右延伸为一个面;第四,利用“Geometry.Intersect”节点获取面与面之间的交线,所得交线即为左右幅桥梁中心线。
(4)创建轮廓族参数族。轮廓族样板采用“自适应公制常规模型”,利用自适应公制常规模型中参照点的“偏移”约束关系,将偏移尺寸设置为参数,从而使参照点达到参变效果,由点及线,最终使箱梁轮廓达到参变效果[4-5]。
(5)创建控制截面一览表及轮廓参数表。变截面连续箱梁的梁高变化是抛物线变化,除将腹板、顶板、底板变化处截面取为控制截面,在抛物线段利用以两米为单元长度,加密控制截面,从而保证建模精度,本实例中共取控制截面139个。
(6)表格数据输入。利用Dynamo程序中节点“Data.ImportExcel”作为截面参数的输入的核心节点,读取Excel数据文件后再利用List工具的相关节点处理,最终形成可用数据。
(7)参数化放置轮廓族。考虑到轮廓族导入时方向出错等问题,先将轮廓族按照控制截面数量及参数放置在平面上,再利用“Geometry.Transform”将轮廓对应转换到桥梁左右幅中心线对应位置。使用核心节点为“FamilyInstance.ByPoint”、“PolyCurve.ByJoinedCurves”、“Element.SetParameterByName”。
(8)创建桥梁实体并导入Revit。创建实心外轮廓实体时可直接利用节点“Solid.ByLoft”放样实体,但是创建内部空心实体时,由于变化为直线变化,则需要将内轮廓前后两两配对后再利用“Solid.ByLoft”节点放样为多个几何体,再利用“Solid.ByUnion”节点组合为一个实体。最后利用节点“Springs.FamilyInstance.ByGeometry”将Dynamo中的实体导入 revit中。
3 结论
文中介绍了基于Dynamo+revit创建变截面连续梁桥的方法,实现dynamo和revit的互通,不必再分节段单独创建族,减少了人工参与的建模工作量,大大提高了建模的效率和精度。