Cesium中的常用格式 3D Tiles简介
3Dtiles是一种开放的规范,用于传输和加载海量的异构三维地理空间数据集。它使用了类似于地形和影像的瓦片流技术,使得建筑物、BIM模型、点云和倾斜摄影等大规模三维模型能够在Web端流畅地展示。
3Dtiles的设计目的和优势
早期地理的三维是使用不规则三角网,也即所谓的三角面片进行渲染的。如下图:
但随着学科的融合、计算机技术和硬件的更新换代,使得有模型、有细节的真三维融入到GIS中,也就是之前文章中介绍过的glTF格式。(Cesium中的glTF是什么)但面对大规模精细三维数据的加载,还要照顾到GIS的各种坐标系统、分析计算,gltf这种单个模型的方案显得力不从心。2016年,Cesium 团队借鉴传统2DGIS的地图规范——WMTS,借鉴图形学中的层次细节模型,打造出大规模的三维数据标准—— 3d-Tiles,中文译名:三维瓦片。
它在模型上利用了 gltf 渲染快的特点,对大规模的三维数据进行组织,包括层次细节模型、模型的属性数据、模型的层级数据等。截止目前,3D Tiles有两版本:1.0 和 1.1。
3Dtiles的基本组成和结构
3Dtiles的文件结构可简要的看下图:
上图是3Dtiles的1.0的基本格式,3Dtiles的1.1的增加了对glTF文件的直接支持。如下图:
主要的数据类型:
- b3dm:批量化的三维模型,适用于异构模型,如纹理地形或3D建筑
- i3dm:实例化的三维模型,适用于同一个三维模型的多个实例,如树木或灯柱
- pnts:点云,适用于激光扫描或摄影测量产生的点数据
- cmpt:复合瓦片,适用于将多种瓦片格式组合在一起的情况
- glb:glb格式,适用于3D建筑模型
另外除了三维数据,每个节点也会有一些其他的元数据,如属性数据、层级数据等。如图:
3Dtiles的数据处理和转换工具
如何将传统的三维数据转换成3Dtiles格式,常见的的方案有:
- Cesium官方提供的Cesium Ion在线平台,可以将各种三维数据源转换为3Dtiles格式
- Github开源的小工具,如obj23dtiles、gltf2glb等,可以将特定的三维数据格式转换为3Dtiles格式
- 一些商业化的工具集,如Cesiumlab、FME等,可以提供更多的数据处理和转换功能
参考
- https://zhuanlan.zhihu.com/p/539888387
- https://www.jianshu.com/p/bf075a1b91d9
Cesium学习笔记汇总
相关阅读
声明
1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。
2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。