BIM几何引擎提供BIM应用中通用的三维造型能力,支撑多形态BIM构件的精细化模型计算与结果审查,支撑多源数字模型集成。
BIM模型的轻量化包含轻量化存储及轻量化渲染两个维度。轻量化存储本质是对原始BIM模型进行的一种“压缩”处理,包括几何数据和非几何数据的剥离,并对几何数据进行参数化处理及压缩存储,达到缩小模型体量的目的,这样方便在网络上的传输。轻量化渲染则是三维渲染引擎针对大模型,大场景的渲染优化技术,实现在有限的硬件资源的情况下以较高的帧率去渲染大体量模型。

0.3.1.1 3.1.1 Web浏览器实时渲染及管理

BIM三维大场景渲染,可以支撑设计、审查、施工、仿真、运维等领域的可视化应用。BIM轻量化引擎要实现对三维几何数据的实时渲染,需要进行以下三个步骤的动作。首先,需要将三维几何数据从服务器端下载到客户端电脑或移动端设备内存。再调用客户端电脑或移动端设备内存和GPU(显卡)高效的实时渲染三维几何数据,还原三维BIM模型。最后通过API接口调用形式,实现对三维BIM模型及其构件的操作、管理和对外功能实现。

0.3.1.2 3.1.2 BIM模型数据优化

平台支持IFC标准格式的模型装载,实现BIM原生模型轻量化后的“无差别化”展示和应用。BIM轻量化引擎模块基于数据包技术和WebGL图形引擎实现BIM模型的轻量化,支持DWG、PDF图纸文件、IFC、SKP等常见模型文件类型的在线轻量化浏览,可在线浏览BIM模型文件。
针对场景中单个文件内容或多个文件的自动合并后的模型及数据内容进行优化处理,更符合BIM核心服务进行数据调用的需求。主要包括:模型坐标与尺寸单位统一、几何数据的冗余优化、实例与引用数据算法、数据重组与空间划分、几何数据流分包处理、属性数据处理与推送等,房建类模型优化的具体功能点包括如下。
(1)几何数据去冗余
BIM模型原始文件中可能存在大量冗余数据,对后续模型展示、构件信息查询等功能没有意义。通过数据去冗余可以大大减少数据尺寸,便于后续使用。
(2)实例与引用数据算法
利用实例、引用数据算法可以大大减少前端对内存和显存的需求量,对大模型展示至关重要。
(3)几何计算信息
提取几何计算信息,支持后续数据统计和其他BIM应用。
(4)数据重组合(类型,层次,几何,属性等)
对BIM模型原始数据进行重组合,方便在前端BIM应用高效的数据关联使用。
(5)数据空间划分处理及优化
从原始BIM模型中提取空间划分信息,存入数据库,便于后续查询。
(6)构件空间几何节点重排序重分配
根据构件的空间几何信息,进行节点重排序,有利于后续渲染优化。
(7)数据流式分包处理
对轻量化后的数据进行流式分包,便于数据传输,提高模型数据的传输稳定性。
(8)属性数据处理与推送
从原始BIM模型中提取构件属性信息,利用数据库独立存储,便于后续BIM数据的进一步扩展应用。
(9)流式数据文件内容管理
数模分离处理中,对BIM模型进行内容摘要,并将摘要信息独立存储,提供前端使用。