随着 WebBIM 和3D-GIS技术的大力发展,建筑模型的复杂度与构件数量呈几何倍数增长,其中管廊复杂网格是影响模型轻量化和在线渲染速率的一个关键性问题。为有效减少管廊复杂网格模型的数据量及复杂度,本文针对一般圆柱体形管廊,复杂网格的弯管管廊模型及中空管廊网格模型,提出了一套轻量级参数化算法。该算法对场景中的管廊模型进行参数化重绘并辅助以多细节层次等视觉优化手段,以减轻 WebBIM 场景中的管廊模型渲染负担,其在拥有大量管廊模型的场景中应用成功,具有较强的工程实践意义。
近年来,网络技术的发展突飞猛进,人类正向高度信息化的社会迈进。BIM在国内建筑业形成一股热潮,尽管拥有了社会的大力支持,Web 端的 BIM 大规模场景应用开发仍然面临许多巨大的挑战:
一、网页存储瓶颈问题:随着 BIM场景规模的增加,建筑内部空间结构复杂度不断提升,管廊结构的模型体量不断增加,BIM 数据未来可能达到城市级别(100 TB 以上),通常来说,PC 端的浏览器能够使用的内存仅为 1.5 至 2 GB,稍大的 BIM模型就可能会导致浏览器的崩溃。
二、计算渲染瓶颈问题:传统加载方式中,IFC构件被逐一添加在场景中,管廊模型拥有的三角化面片数量多,导致整个初始加载速度慢,且场景中FPS 较低,浏览建筑模型容易出现明显卡顿情况。
在以上问题的基础上,尤其是管廊管线这类构件往往在城市建筑模型中占有了一定的比重,例如水管,通风管道等,且建筑物内部管廊模型排列往往具有一定的复杂性,优化这部分管廊模型的参数,能够有效减少场景中的三角面片数量,帮助提升模型加载速率,对改善上述的两个瓶颈问题起到了积极的作用。
因此针对上述问题,本文提出了一套三维管廊复杂网格参数化算法,首先通过语义分析和几何分析,提取大规模 IFC 场景中的管廊网格模型构件类。然后针对一般圆柱体形管廊网格模型,弯管管廊模型以及中空管廊模型三种不同的特征,对其在服务端分类进行参数化处理,并将参数结果返回给网页端进行渲染。为了降低网页端的渲染负载,实例化管廊模型的同时辅助以基于 LOD 多细节层次技术的渐进式自适应渲染方法,有效降低场景中管廊模型部分的总数据量及其三角面片数量,加快场景初始加载时间以及提升场景总体加载的帧速率,为轻量化BIM 大规模管廊模型场景的在线可视化提供了支持。
1 相关研究
1.1 管廊的参数化原理
原始的 BIM 建筑模型经过 IFC 参数化解析之后,分成了多种不同的类,每一类中都有成百上千个小的网格模型信息。这些顶点信息与三角网格在网页端经过渲染,组成了浏览器端的建筑模型。这种通过模型解析生成的管廊网格模型通常是呈现不规则,且较为繁杂的情况。如果能将这些不规则的三角网格信息抽取出来,经过参数化处理转换为大家熟知的管廊管线特征信息,那么就可以通过管廊网格的顶点信息,半径信息,主方向特征参数化重绘出一个圆柱体形 三 维管廊网格模型,并且呈现规范的三角网格渲染方式。
通常的直线管廊网格模型的构造图如图 1 所示,具体渲染方法为:将直线三维管廊网格模型抽