• ISSN: 1674-7461
  • CN: 11-5823/TU
  • 主管:中国科学技术协会
  • 主办:中国图学学会
  • 承办:中国建筑科学研究院有限公司

2024, 16(6): 117-121. doi: 10.16670/j.cnki.cn11-5823/tu.2024.06.21

信息模型和数据同步可视化平台的研究

北京探索者软件股份有限公司,北京 202312

通讯作者: 徐海洋,

网络出版日期: 2024-12-20

作者简介: 支文浩(1999-),男,研究专员,主要研究方向:建筑信息模型、数据库系统、图形渲染

基金项目: 探索者软件“数字化转型”五年规划立项研究 TSZ-2023-012

Research on Information Model and Data Synchronization Visualization Platform

Beijing Explorer Software Co., Ltd., Beijing, 202312, China

Corresponding author: Haiyang Xu,

Available Online: 2024-12-20

引用本文: 支文浩, 徐海洋. 信息模型和数据同步可视化平台的研究[J]. 土木建筑工程信息技术, 2024, 16(6): 117-121. doi: 10.16670/j.cnki.cn11-5823/tu.2024.06.21

Citation: Wenhao Zhi, Haiyang Xu. Research on Information Model and Data Synchronization Visualization Platform[J]. Journal of Information Technologyin Civil Engineering and Architecture, 2024, 16(6): 117-121. doi: 10.16670/j.cnki.cn11-5823/tu.2024.06.21

摘要:建筑信息模型在建筑工程领域的三维设计独树一帜,信息模型对现实物理世界进行了充分描述和还原,这对模型可视化和属性信息数据再应用的要求也越来越高,为此需要一项承接信息模型和数据同步可视化平台。本文研究了对信息模型数据描述、几何模型数据和属性参数数据进行了类比选择和规整处理,基于Revit平台开发了一套模型传送可视化平台查看的插件,设计了数据管理和处理、三维渲染和UI界面三个模块,描述了可视化平台承接数据源进行模型展示、可视化渲染以及接收建筑物体描述的数据信息,实现了三维模型格式和属性信息的有效融合。

关键词: 建筑信息模型, 可视化平台, 三维渲染, 数据库开发, 属性信息

引言

随着国家产业结构的调整,建筑工程行业的变革迎来新的机遇和挑战。BIM是目前较为完善的建筑信息描述方法,其能对建筑物理空间、功能等特性进行数字化表达,也能通过参数化模型对建筑实体进行立体、直观、精确的描述[1]

本文提出将几何模型、族属性信息及数据规则进行异构作业转换成完备的数字化模型,无损传送到可视化平台进行渲染、展示、查看和共享,实现三维模型格式和属性信息的有效融合,并同步到可视化平台进行开发再应用。对于三维模型格式进行可视化渲染及接收海量的数据信息,平台的技术架构选型尤为重要,为后续数字化转型平台的搭建提供了可借鉴经验。

1.   信息模型数据描述

数据信息是数字化的重要载体,其定义尤为重要,便于数据库开发的统一性和规划性,为后续的可视化展示提供支撑。本文采用Revit平台创建建筑土木及管线设备相关的规整构件模型,且添加共享参数,其字段名称、专业分类及参数类型展示如表 1所示。把数据字段加入到指定模型类别,方便对模型的数字嵌入和数据字段明细统计展示,可实现模型和数据的关联。数字模型的意义在于,选中某一构件,属性栏可展示出该构件所有的相关信息,例如,灯具应包含型号、功率、光通量、安装高度及制作商等数据字段。数字化描述设计意图,目的是实现数据的规整性、完备性[2],为后续可视化平台提供结构化的数据信息,可让平台程序解析处理这类的参数数据。

表 1  共享参数信息表
模型类别 字段名称 专业分类 参数类型
结构柱 底部标高 结构 Select fare
耐火等级 建筑 String
照明设备 型号 电气 String
风机 风量 机械 Varchar
传感器 传感器识别 电气 Bool

2.   数据转换处理

信息模型包含几何模型和参数数据,转换处理信息模型至目标平台不仅要考虑对几何空间变换和模型数据的解析,也要对参数数据的抽取、数据库写入,进行模型构件级的关联映射。

2.1   几何模型数据

几何模型的传送是一项较为成熟的技术,通过读取开放API接口导出需要的模型格式即可,问题在于后续平台接收模型数据的开源性、稳定性和加载速率。开源性需要足够了解描述几何体空间位置数据、顶点索引数据、法线向量数据、UV坐标及纹理数据,并可以演化该数据格式形成可封装的模型格式;稳定性要求该格式发展较为成熟,平面、异形及NURBS曲线曲面的坐标多次导入导出稳定记录;加载速率指模型转换后三维模型数据记载量大且加载时间长的问题。

根据以上特性,选用了数模分离架构,压缩优势明显的glTF格式,该文件描述了3D场景的结构和组成,包含模型的节点层次、材质、网格及着色器等相关逻辑结构。glTF的数据结构简单,内存占用较小[3],如图 1所示。随着模型文件体量增大,glTF体积缓慢增长,而obj增长较快,且远大于glTF文件,这是由于原始Revit文件经数模分离及格式转换后,仅有模型网格信息被存储于glTF文件中,而大部分信息保存在bin文件[4]、glsl文件和Texture贴图文件中。bin文件是二进制几何文件,存储几何形状的顶点坐标和坐标索引等信息;glsl是着色器文件,用来存储顶点着色器和片元着色器;Texture贴图文件是模型纹理贴图文件,支持.jpg或.png图像文件[5]

图 1  模型大小对比

2.2   属性参数数据

Revit模型由若干个族组成,族是一个包含通用属性(称作参数)集和相关图形表示的图元组[6]。参数分项目参数和共享参数,族又分实例属性和类型属性,区别是按单个实例统计还是按同一类统计,例如,Unreal Engine出品的DataSmith插件和Autodesk Forge平台,可以将Revit中的模型和属性字段进行映射关联导出到对应的引擎平台,实现模型的应用。这些参数字段一部分是族实例属性,另一部分为族类型属性,如果都导出到平台,则会造成数据冗余。针对这种情况,需设计一种数据结构标准规则。

数据的传送导出有两种方法:一种是Revit软件本身自带的功能导出ODBC数据源;另一种则通过Revit提供的API接口抓取属性信息导出特定的数据结构格式,通过获取API接口抓取字段信息,将数据写入对应数据库文件中进行数据的利用。但ODBC导出的参数字段不可指定导出哪些,导出的数据范围有限且冗余。本文导出的参数字段使用Revit API中的IExportContext接口来抽取属性信息[7],导出必要的数据属性,减少冗余数据,更合理地设计数据结构。

模型数据设计规则如表 3所示。先把模型类别进行规整封装;再用SQL语句编写对应模型类别表的数据定义,如表 4所示;最后将需要的参数字段通过编码调用封装的函数名驱动SQL语句自动写入数据库中。

表 3  族类别数据设计规则
模型类别 Revit类别命名 规则类别命名
Wall A_Walls
Column A_Columns
Door A_Doors
照明设备 LightingFixture E_lamps
表 4  A_Doors表的数据设计规则
字段名 数据类型 不是null 主键
ID Int true
Serial number Text false
Family name Text false
Type name Text false
Category Text false
Level Text false
Width double false
Height double false

3.   可视化平台设计

可视化平台应具有对模型的绘制、渲染、选择能力[8],以及三维显示能力依靠优秀的三维渲染图形接口,才能对虚拟空间进行清晰流畅的系统体验,提供平台服务质量。三维信息模型可以从模型精度、材质精细度、高保真的光照孪生还原以及信息数据的属性转存,进行可视化查看和体验,保证模型与功能业务达到极致体验。

本平台架构设计采用C/S(Client/Server)结构,交互性强,响应速度快,网络通信量低,利于处理大量数据[9, 10]。平台包含数据管理和处理、三维渲染和UI界面三个模块。

3.1   UI模块的选择

考虑到可视化平台的系统兼容性和类库组态支持性,UI模块的技术选型应选择WPF(Windows Presentation Foundation,现代图形显示系统),相比MFC、Qt、Labview及Winform等传统界面技术,使用WPF开发可视化平台具有以下优点[11]

(1)WPF的界面设计与分辨率无关,所有界面显示元素都使用与设备无关的单位(DIU)进行度量,屏幕自适应更好,解决不同分辨率下模型显示渲染的花屏问题;

(2)采用较为先进的渲染技术DirectX,提升了渲染性能,也可展现更精美的界面;

(3)采用MVVM架构,如表 5所示,界面设计和逻辑程序设计分离,开发解耦,使得数据绑定机制更加完善,前端界面设计使用XAML技术,后台业务控制使用C#语言,并行开发,提高编程效率[12]

表 5  MVVM架构解释表
状态 状态解释
Model 数据模型,用来存储数据
View 视图界面,用来展示UI界面和响应用户交互
View Model 视图模型,Controller和View Model视图绑定,将UI和业务逻辑剥离

(4)类库丰富,Revit二次开发大多选择C#语言/.NET平台,对接Revit开发和操控数据库,方便调用。

3.2   渲染图形API

图形API提供了一种抽象的显卡硬件访问方式,能够让3D渲染工具等软件充分利用CPU和GPU的能力。Vulkan是Khronos组织制定的“下一代”开放图形显示API。Vulkan提供了能直接控制和访问底层GPU的显示驱动抽象层。显示资源由应用层负责管理,包括内存管理、线程管理、多线程绘制命令产生及渲染队列提交等[13]。从驱动层看,Vulkan的Command Buffer和Command Queue设计,让Command Buffer实现多线程读取和写入;GPU按照Command Queue内缓冲区数据块进行渲染操作[14],应用程序能够充分利用CPU多核多线程的计算资源,降低CPU等待,降低延迟,3D展示窗口会接入模型加载器glTFLoader,以保证正确读取转换的几何模型,三维图像通过Vulkan图形接口渲染到窗口中,使用特定于Windows平台的API vkCreateWin32SurfaceKHR创建图像表面将三维转换为二维表面。它是一个交换链的概念,所有图像表面都需要通过WSI(窗口系统集成)进行交换最终显示,如图 2所示。

3.3   数据融合处理

可视化平台拥有模型数字化能力,考虑到数据的轻量化和可移植性,平台数据库选择了SQLite数据库引擎[15],转换的几何模型和属性数据将暂存平台缓冲区,它们的共性是都会记录构件的ID号。ID作为表中属性的主键,这是对几何数据和属性数据进行对应关联的唯一标识符,也是索引表的指针地址,应选用索引查找算法更为合适,将长度为n的表均匀分成b块,每块含有s个记录,即$ b=\left\lceil\frac{n}{s}\right\rceil$,在等概率的情况下块内查找的概率为$\frac{1}{s} $,每块的查找概率为$ \frac{1}{b}$,分块查找的平均查找长度算法公式为[16]

$ A s L_{b s}=L_b+L_w=\frac{1}{b} \sum\limits_{j=1}^b j+\frac{1}{s} \sum\limits_{i=1}^s i=\frac{1}{2}\left[\frac{n}{s}+s\right]+1 $

(E1)

通过索引算法将模型ID与数据库ID查找关联,完成逻辑算法,即可实现数模一致性、联动性。

对于多页表中的多种属性,模型体量越大数据量越大。如图 3所示,点选中模型类别构件,将此ID号进行抽象索引,驱动几何模型和属性数据的关联,属性列表显示便是正确的数据库文件元组属性信息。

图 3  数据索引流程图

4.   同步

4.1   同步流程

可视化平台启动将在Revit软件二次开发,启用菜单包括登录、同步和更新同步三个PushButton,如图 4所示。启用同步功能前,应选择要渲染的三维视图,程序提取所选视图中的模型内容,开始模型转换和属性参数数据存入数据库文件,可视化平台界面独立弹出,预加载处理好的glTF模型和属性参数数据将并发同步到可视化平台进行三维渲染展示和数据查看,平台同步的流程步骤如图 5所示。

图 5  可视化平台同步流程

4.2   同步效率

针对平台的转化效率提出对比验证,平台模型转换技术是根据当前三维视图中的内容进行遍历提取转换,选取了一个229 MB的RVT模型,通过利用选择框的限定来分划小、中、大不同体量模型进行同步测试,得出的测试数据如表 6所示。从表中可以看出,在模型转换速率上,小、中体量模型转换时间达到预期水平,对于用户进行实时可视化查看预览,性能速率已基本满足正常使用。大体量模型相比预期时间增加了50多秒,可能是取消了选择框后,算法遍历整个三维视图范围加大,造成时间加长。模型ID与表中ID映射关联的处理速率基本满足预期,通过效率对比验证,本程序基本满足辅助三维设计工具的要求。

表 6  同步效率对比验证
模型大小 构件数量 转换glTF时间/s 数据同步时间/s

179 0.72 s 0.98 s

16 052 47.88 s 55.82 s

33 294 170.10 s 200.01 s

5.   结论

本文针对BIM模型的再应用,充分结合了模型和属性数据的同步转换可视化平台,从模型转换、模型渲染、数据库选型以及数据检索关联多方面展开技术方案分析,验证了模型转换的数据量提升了加载效率,可视化平台赋予了模型渲染能力,使得模型更加逼真,更加直观地展示表达设计意图,便于辅助判断项目的合理性和美观性,可在前期的方案规划、设计比选中提高准确性,避免后续频繁变更。通过数字化对族属性信息操作,数据规则的统一,为后续智能建造、智慧运维运用属性信息数据提供了技术选型思路。

[1]

杨启亮, 邢建春. 建筑信息物理模型[J]. 一种建筑信息描述新形式[J]. 中国工程科学, 2023, 25(5): 222-232.

[2]

潘泽宇, 史健勇, 姜柳. 基于语义网的电网工程BIM模型完备性审查方法[J]. 图学学报, 2023, 44(5): 1021-1033.

[3]

饶平平, 赵思凡, 张学亮. 基于Web流式加载的BIM轻量化技术研究与应用[J]. 土木建筑工程信息技术, 2022, 14(5): 31-36.doi: 10.16670/j.cnki.cn11-5823/tu.2022.05.06

[4]

边根庆, 陈蔚韬. 面向Web的建筑三维模型可视化方法研究[J]. 图学学报, 2021, 42(5): 823-832.

[5]

刘天漪, 钟志农, 熊伟, 等. 基于内存数据库的三维模型管理方法[J]. 地理信息世界, 2017, 24(2): 88-93.

[6]

卢石碧, 李健梅, 李雪松, 等. Autodesk Revit二次开发基础教程[M]. 上海: 同济大学出版社, 2015: 156-157.

[7]

吴楠, 何颖辉, 吕亮. 一种在unity程序制作中输出模型数据的方法: CN115964025A[P]. 2023-04-14.

[8]

梁聪, 徐延宁, 王璐, 等. 面向多角色的三维CAD内核开发架构[J]. 计算机辅助设计与图形学学报. 2023, 35(12): 1817-1818.

[9]

邹宜金, 张美锋, 曹玲燕, 等. 基于C/S架构的电力设备数据库管理软件设计研究[J]. 电气技术与经济. 2023(04): 18-19.

[10]

王杰, 薛博宇, 徐云华, 等. 基于C/S架构和物联网技术的可移动医疗设备共享调配系统的设计与应用[J]. 中国医疗设备. 2024, 39(01): 86-87.

[11]

张玉民, 何鑫, 杨百川. 基于WPF技术的无人机地面站软件设计与实现[J]. 计算机工程与设计, 2019, 40(4): 1167-1173.

[12]

刘铁猛. 深入浅出WPF[M]. 北京: 中国水利水电出版社, 2010: 192-199.

[13]

Parminder Singh. Learning Vulkan[M]. Singapore: China Machine Press, 2020: 21-28.

[14]

沈同乐. 基于Vulkan三维渲染引擎的设计和实现[D]. 北京: 北京林业大学, 2021.

[15]

金语璁, 徐伟, 喻钢, 等. 多源数据融合下基于多维度的斜拉桥在线综合评价系统研发[J] 土木建筑工程信息技术, 2023, 10(5): 4-5.doi: 10.16670/j.cnki.cn11-5823/tu.2023.05.02

[16]

王亚平, 刘伟. 数据库系统工程师教程4版[M]. 北京: 清华大学出版社, 2020.

计量
  • PDF下载量(15)
  • 文章访问量(138)
  • HTML全文浏览量(75)
目录

信息模型和数据同步可视化平台的研究

支文浩, 徐海洋

  • 版权所有© 《土木建筑工程信息技术》编辑部
  • 京ICP备17057008号
  • 地址:北京市朝阳区兴化路2号院1号楼
  • 电话:010-64517910 邮编:100013
  • 微信号:tmjzgcxxjs  QQ:3676678954  E-mail:tmqk@cgn.net.cn
本系统由北京仁和汇智信息技术有限公司设计开 技术支持: info@rhhz.net