实景三维模型浏览器中打开?利用MapGIS轻松将三维数据在浏览器中无插件浏览

GIS前沿 2021-08-15

2021年3月9日,经中国信息协会审查批准,《全空间三维模型数据格式及服务接口规范》(M3D)团体标准发布。该标准由国家地理空间信息中心牵头起草,住房和城乡建设部信息中心、工业和信息化部信息中心、国家地理信息系统工程技术研究中心、中国地质调查局发展研究中心、深圳市数字城市工程研究中心、深圳市中地软件工程有限公司、武汉中地先进技术研究院有限公司等二十余家单位参编,于1月20日通过专家组评审。专家组一致认为:该标准提出了一种开放式、可扩展的三维模型数据格式及服务接口规范,涵盖空中、地上、地表、地下等范围的数据类型,为全空间三维模型数据提供统一的存储和管理,能够有效支持全空间数据的一体化组织、可视化、分析与共享服务。

M3D针对多端应用的三维数据,对海量三维数据进行了网格划分与分层组织,采用流式传输模式,实现了三维数据多端一体的高效解析和渲染。

应用示例1

将289G倾斜摄影数据和地质体数据,生成M3D缓存,并发布为数据服务,在浏览器端无插件浏览,效果图如下:

应用示例2

    地上景观,地下管线,地质体M3D格式数据的web端应用示例:

通过MapGIS的M3D数据格式,实现了五大特性:

●数据的高压缩比,流式传输的高效网络传输;

●按数据分布特征进行精细网格划分的多级LOD模型;

●全面支持无插件三维客户端,保证WebGL无缝融合;

●支持单体化查询、支持高亮选择、支持修改对象颜色、批量修改对象可见性;

●桌面端、浏览器端、移动端的一体化应用。

同时支持将地质体,管线,景观模型,ogsb等多种数据转换成M3D,极大的提高数据显示效率。基于M3D数据格式,从服务端数据发布,到多种客户端加载应用,形成了一套完整的B/S应用解决方案。

第一章 M3D技术介绍

SUMMER.TIME

#

1.1 优化数据分块策略

为改善异构3D数据集的流式传输和渲染性能,M3D会将原始分散的模型数据进行分块合并。传统的分块策略都是基于四叉树,八叉树等规则网分块,这样避免在模型密集的地方导致单个数据块中的数据过多,数据量大,而数据稀疏的地方也是同样的分块大小但数据较小,造成数据分配严重不均匀。M3D采用改进版K-D树对数据进行组织重构,使得数据块的数据量相对均衡,并且还会把数据进行聚合操作,进一步减少数据分块。

在数据组织方面,传统的分开合并会造成数据单体信息的丢失,M3D在数据合并时仍会记录数据要素的单体信息,可保证合并后的数据仍然能进行单体信息的提取、高亮显示、属性查询等操作。

#

1.2纹理集(纹理合并)技术

纹理集是包含一系列较小图像的图像,通常将较小的图像拼接在一起,使用纹理集可以在使用不同纹理的几何图形之间进行批处理,极大的提升渲染流水线的工作效率。M3D集成了纹理集技术来提高渲染性能,采用纹理集的思路,对第一步中分块后的模型数据中的纹理进行纹理的合并、纹理坐标的重算,生成新的纹理集,通过测试发现可以显著的提升三维数据的渲染效率。

#

1.3多级LOD模型支持

M3D引入LOD技术来提升三维交互体验,将分块后的数据利用简化算法对地理场景中的各类实体模型进行层次简化,构建视点无关的层次模型;以达到在近处绘制其较精细的层次,在远处绘制其较概况的层次,降低显卡绘制的负担,获得高效率的渲染效果。

#

1.4 高效压缩算法

为进一步减少分块分级后数据的大小,M3D采用高效压缩算法对数据的顶点法向等几何信息进行压缩处理,客户端在渲染时进行动态解压。这将进一步减少数据的大小更利于网络传输。

第二章 操作流程

SUMMER.TIME

本次操作会使用到MapGIS 10 for Desktop 高级版 X64、MapGIS IGServer .NET x64;相关软件下载链接如下:

MapGIS 10 for Desktop 高级版 X64:http://www.smaryun.com/goods.php?id=2207

MapGIS IGServer .NET x64:http://www.smaryun.com/goods.php?id=433

操作流程图如下:

#

2.1生成配置文件

打开MapGIS平台软件,右键地图文档,加载三维场景并预览

切换到“三维建模功”能界面,点击倾斜摄影>生成配置文件,设置源数据目录,点击“转换”生成倾斜摄影配置文件。

结果文件预览:

#

2.2 M3D数据转换

右键新场景节点,选择生成缓存>OSGB图层生成M3D缓存:

设置模型生成参数

【高级选项】:可以通过设置球面中心点位置以及偏移量来定位模型位置

【缓存目录】:设置模型缓存路径

点击生成即可生成M3D缓存;

结果文件如下

#

2.3服务发布浏览

通过右键新场景>添加模型缓存图层,添加索引文件“Data.mcj”文件来添加M3D缓存。确定新场景下面只有M3D缓存数据后,保存为地图文档;

打开IGServer,通过发布三维数据发布M3D缓存服务;

WebGL预览(建议用谷歌浏览器):

来源:MapGIS那些事儿

- END -

(0)

相关推荐