轻量化思路:
将 Revit 项目文件转换为包含建筑模型几何信息的 OBJ 文件和包含模型属性信息的 JSON 格式的文件并格式化后存放在 JSON 中间文件中,将 JSON 中间文件导出后,再进行 WebGL 开发实现古建筑三维模型的轻量化展示、交互及属性查询
JSON文件
系统设计
系统采用Java EE 的开源技术,服务器采用的是Tomcat,数据库服务器采用的是MySQL数据库,并采用MVC的三层架构,WebGL框架采用Three.js。
模型对象的属性关联
由于经过 Revit 二次开发后的几何数据和属性数据分别存储在了中间文件的几何数据区域和属性数据区域两个不同的区域,所以在此需要建立某种机制,将两个区域中的数据信息进行关联。由于 Revit 节点的属性中包含统一标识符 ID,它是 Revit 软件内部生成的字符串,每个节点都不同且唯一。在此设置统一标识符 ID 将 JSON文件不同区域中 的几何信息和属性信息进行关联。
为了在属性查询时实现属性与模型的关联及 属性信息的显示,获取 Canvas 子对象的具体实现步骤如下:
测试结果