基于建筑信息模型(BIM)的城市轨道交通线路快速建模方法*
2019-08-21白娇娇吕希奎孙培培
白娇娇 吕希奎,2 孙培培
(1. 石家庄铁道大学交通运输学院,050043,石家庄;2.河北省交通安全与控制重点实验室,050043,石家庄,第一作者,硕士研究生)
0 引言
以三维数字技术为基础的建筑信息模型(BIM)技术,集成了工程项目各种相关信息的数据模型,具有多维化和协同性等特点,并贯穿设计、施工、运营维护整个工程生命周期,对提高城市轨道交通设计、施工和运营水平,促进轨道交通设计全面信息化和可视化,具有重要的应用价值[1]。国内已经有多个城市轨道交通工程项目正积极推进BIM技术应用[2-7]。
城市轨道交通线路作为一种典型的长带状线形工程,涉及的专业多、模型复杂、模型数据量极大,在应用BIM技术过程中,面临着以下两个关键问题需要解决:
1) 在城市轨道交通规划设计中,通常需要对设计方案不断的修改完善,因此,对于大量复杂构件族,单纯手工利用BIM软件建模方式存在建模和修改工作量大、效率低,模型拼装困难,不能满足不断修改完善设计的要求。
2) 城市轨道交通一般长为几十km,所涉及的完整的BIM数据量极大,目前即使高端图形工作站在显示和加载大数据量的复杂BIM时,也存在加载过程慢、浏览显示卡滞等问题,严重影响模型的应用。
针对上述问题,采用Revit BIM软件平台及其参数化技术,并利用其二次开发技术、参数建模方法、构件参数数据库存储技术和线路区间自动划分方法等,实现城市轨道交通线路构件族的快速创建和线路整体BIM的自动拼装。提高城市轨道交通线路设计质量和效率,为解决城市轨道交通BIM应用提供解决方案。
1 Revit软件二次开发环境建立
Revit软件作为目前一种主流的BIM软件,具有强大的二次开发功能,使用二次开发技术可以解决或者简化很多人工不能完成的操作。特别是重复量较大、规律性很强的工作,能够大大简化相应的过程,高效、快速的实现需求功能。利用Revit API软件、C#语言进行Revit软件的二次开发来实现族模型的自动创建和搭建。
1.1 Revit软件二次开发工具及开发方式
Revit软件的二次开发需要三个必要条件,分别是Revit系列产品、Revit SDK以及Visual Studio软件。Revit API有两种开发工具:VSTA(Visual Studio Tools for Application)和Visual Studio。两种开发工具对比如表1所示。
表1 Revit API的两种开发工具
有两种方式来扩展Revit的功能,即外部命令方式和外部应用方式。两种方式如下:
1) 外部命令方式:从IExternalCommand接口派生,重载IExternalCommand.Execute()的方法添加功能代码来实现命令,应用最为广泛。
2) 外部应用方式:从IExternal Application接口派生。该方式可以添加菜单、工具条或者其他的初始化命令,在启动及关闭Revit的时候自动执行,应用较少。
1.2 系统开发流程
以Visual Studio 2010为开发平台,采用外部命令IExternal Command接口派生方法的Revit软件二次开发流程如图1所示。
图1 Revit软件二次开发流程
2 城市轨道交通线路结构部件建模
城市轨道交通线路结构部件主要包括桥梁、隧道、道床、轨枕、钢轨、扣件等。利用Revit软件平台实现城市轨道交通线路BIM应用及模型拼装,首先构建线路结构部件的族,完成构件参数化建模。一种方式是利用Revit软件平台,手工完成建模;另外一种方式是通过BIM二次开发,通过程序自动创建线路构件族。
2.1 线路结构部件参数化建模
参数化有两方面的含义:一是指构建的几何尺寸的参数化,通过对尺寸添加标签就可以通过修改尺寸标注来修改结构部件尺寸,通过控制参数来改变结构部件的形状;二是指构件之间的参数化,即某一构件的删除、修改尺寸、移动等操作会引起与之相关联的构件变化。
采用“公制常规模型.rft”族样板文件和“自适应公制常规模型.rft”族样板创建的部分构件族如图2~图7所示。
a) 一字型
a) II型弹条
a) 环框式洞门
a) 洞身样式1
2.2 基于二次开发的参数化族自动建立
对于城市轨道交通而言,BIM需要大量的模型构件,通用方法是2.1节所示的手工建立各个构件族,模型构件的修改仍需要手工对模型进行修改,效率低。利用Revit API的丰富接口,将构件参数存储到外部文件(如文本文件、Excel或数据库中),读取外部数据文件,实现族轮廓、拉伸、放样等的自动创建,并根据参数实现模型构件的自动修改和生成。
3 城市轨道交通线路模型组装实现
3.1 模型组装流程
城市轨道交通线路模型数据量极大,若一次性完成整条线路模型的加载、组装,整体模型浏览和查看不顺畅,严重影响模型使用效果。因此,根据线路设计信息,将线路划分为多个区间,划分规则如下:
1) 首先根据线路敷设方式将线路里程划分为不同区间;
2) 若1)的区间过长(如线路均为地下隧道敷设),则进一步按一定的里程长度划分多个子区间。划分示意图如图8所示。
图8 按线路里程划分为不同子区间示意图
最后,根据线路各区间的线路中心线设计数据信息,按里程逐一加载各区间的线路模型(桥梁、隧道、轨道结构模型等)到线路中准确位置上,完成线路整体模型组装。加载的基本流程如图9所示。
3.2 模型组装实现
为了实现城市轨道交通线路的BIM的组装,首先需要确定加载区间,并根据该区间和获取对应的线路的空间位置信息,程序界面如图10所示。在图10中可选择相应的加载区间。其中各区间的中心线设计数据已存储在数据库中,可自动读取。
将创建的族加载到项目中后,通过FilteredElement Collector函数收集所有的元素,遍历所有的族,找到族后,根据空间关系,放置在相应的位置。操作步骤如下:
1) 将建好的桥梁族、隧道族、轨道族以及扣件等载入到项目中。
图9 加载族模型流程图
图10 线路数据管理
2) 根据线路中心线数据,在Revit中生成线路中心线模型。
3) 拾取线路中线作为一条线路,然后选中。
4) 使用RevitAPI,以.NET平台编译程序,实现族的自动放置和拼装。
部分运行结果如图11~图13所示。
图12 路基铺装轨道的运行结果
4 结语
基于线路设计数据,采用Revit BIM平台,利用Revit API软件平台二次开发技术,通过控制参数化方法和族模型外部数据存储方法,实现了线路结构物族的快速创建和模型的自动拼接。该建模方法能够方便地通过改变族模型的控制参数,来修改族模型以更方便地适应项目的需要。根据线路敷设方式划分线路区间,通过区间分段加载,利用Revit软件二次开发技术,实现城市轨道交通线路所有结构部件BIM的自动组装,建立了城市轨道交通线路三维BIM的快速拼接方法。为基于Revit平台的线路模型深化设计奠定了基础。