短信预约提醒成功
中国建设教育协会将会在本月20-21日组织进行BIM技能考试,考生们可以提前 免费预约短信提醒,及时获取BIM考试时间节点信息。
编辑推荐: 入门必备:BIM建模考评大纲之BIM基础知识
商业化平台技术成熟、模型渲染美观,特别是在空间几何计算方面的优势非常突出,但同时也存在一些问题:(1)专业性设计功能完全需要二次开发;(2)不掌握核心代码,无法修改其核心用户界面(UI)以及固有的操作模式,为操作带来不便;(3)纯英文的开发接口程序库,为二次开发带来极大困难。
因此,如果仅仅是进行三维仿真建模的话尚且可行,但如果要利用其开发长大桥梁的正向设计功能,将无法绕开上述问题,另外,商业化平台的前期购买以及后期升级维护成本较高。
相反,如果自主开发桥梁BIM设计程序,因为涉及到空间几何计算、坐标系统、划网建模、3D渲染、长大场景调度等前沿性技术,在开发难度、开发成本、开发周期方面都有较大风险和阻力。但优势在于掌握核心代码,其设计模式及显示界面均可根据使用者需求量身定制,并且程序升级改造灵活、维护成本低。
本文从OpenGL图形渲染的底层功能着手,自主研发BIM建模平台,介绍一款兼具二维交互设计和三维显示功能的铁路桥梁BIM程序。并从铁路桥梁设计的专业角度出发,在程序的开发思路、设计模式比选,以及在视图显示的关键性技术方面做出探索。
程序设计模式
三维桥梁设计程序的特点
(1)在桥梁设计计算方面,需要结合梁缝计算、结构计算等自身的专业性软件,进行协同设计。
(2)在图形类型方面,桥梁工程相对于路基、站场等专业,以及对空间曲面建模方面有更多需求。
(3)在建模方式方面,铁路桥涵设计除了需要建立标准图库来满足标准化结构部件建模以外,桥址范围内的边坡防护、涵洞顺沟等,还需要根据设计参数及三维地形,进行自动化的自适应性建模。
(4)特大型铁路桥梁在国内高速铁路桥梁设计中非常普及,单座桥梁长度突破几百公里以上的情况已形成常态,而桥梁孔跨布置是由精密计算而来,对BIM中任意一处孔跨的更改,都将牵动整座桥数百公里梁跨的重新设计和图形重构。因此,BIM设计程序不仅要求高性能的计算机硬件,对程序数据结构的合理性及算法的高效性也都有较高要求。
二维、三维视图并存的设计模式
目前,国内铁路项目采用的主要BIM设计平台,如:revit、bently、达索等,都是在纯三维模式下开展设计,颠覆性地取缔了传统二维设计方法,设计成果也为纯三维铁路模型,仿真程度高;但铁路桥涵因其自身特点,在设计过程中,对里程、高程、净空、梁缝等外部数据,以及梁、墩台、基础的结构尺寸等内部数据的依赖程度很高,纯三维设计模式无法直接将这些数据展现在设计者眼前,设计者若想查看,必须先经过三维成果向二维成果转换或手动调出数据窗口才可以得到上述数据。
因此对于BIM桥梁设计,不宜完全摒弃二维设计方法。BIM铁路桥梁程序开发能够兼备三维理念和传统二维设计方法,同步生成二维设计成果以及进行三维建模展示或成为更加合理的设计模式。
另外,从程序开发角度来讲,BIM程序若能涵盖二维设计模式,可以更方便地与传统二维设计软件进行衔接,减少BIM程序开发工作量及开发难度。
而且二维、三维结合的设计模式,也可以使设计人员在新型的BIM设计环境下,能够利用自己熟悉的传统设计思路来迅速适应程序,从而提高程序应用效率,否则纯三维模式在铁路桥梁勘察设计领域的推广阻力和成本将会较大。本程序采用了二维视图交互设计,及三维视图显示的设计模式。
程序框架
MVC框架模式概述
程序以C++ MFC为开发工具,以MVC框架模式开发基于OpenGL的二维、三维视图显示功能。模型- 视图- 控制(MVC,Model-View-Controller)框架是图形用户界面(GUI,Graphic User Interface)程序的一种普遍的设计框架。采用MVC框架模式的优势是使得OpenGL渲染函数的调用从普遍的消息路由中完全脱离开来。
模型层
模型层是应用程序的核心部分,所有应用程序中的数据和定义应用程序行为的实现都被包含在内。最重要的是,任何指向视图层和控制层功能都没有被模型层引用,这意味着模型层是完全独立的。它完全无须关心视图层和控制层的行为,从而它只是简单地对视图层和控制层的请求进行加工操作。本程序中模型层负责全部的OpenGL顶点数据管理、顶点缓冲区对象(VBO,Vertex Buffer Object)绘图和图形更新。
视图层
视图层负责根据窗口设备环境创建渲染设备环境,最后将可视化的内容渲染到屏幕之上。视图层不含有指向控制层的引用(与控制层独立)。只有当控制层发送更新请求时,它才会执行渲染操作。然而,视图层需要有指向模型层的引用,因为它需要从模型层得到顶点、法向量、颜色等数据,这样才能将数据渲染到屏幕上。
控制层
控制层负责创建独立渲染线程,并对用户事件作出最直接的响应,它接受和处理所有的用户在窗体或视口中的操作,如鼠标和键盘输入等。为了处理用户事件,控制层需要访问具体的模型层组件和视图层组件。控制层组件通知模型层处理数据,同时告诉视图层更新显示的数据。另外,在本程序中,控制层还负责对用户事件相关的图元数据,如点、线、面、文字等,向OpenGL渲染数据进行转换。
BIM模型在施工过程中的应用可全面提升工程造价行业效率与信息化管理水平,优化管理流程,高效率、高精准度的完成工程量计算工作。以上内容就是“自主研发BIM建模平台:二维、三维视图并存的设计模式”,更多BIM热点资讯/教程分享欢迎关注微信公众号“BIM实训”,也可点击下方免费下载领取精品学习资料。