实景三维是重要的新型基础设施,实现数字空间与现实空间的实时关联;依托新型基础测绘开展城市实景三维建设,可助力于城市治理、规划建设、交通运行、安全生产和文化旅游等方面的智慧化建设。
Cesium是AGI公司计算机图形开发小组与2011年研发的三维地球和地图可视化开源JavaScript库,为三维GIS提供了一个高效的数据可视化平台。
在cesium开发过程中,针对遇到加载大量倾斜摄影数据的过程中出现卡顿的问题,除了参数的设置之外,数据的处理也成为一个原因。
因为Cesium加载的倾斜数据为3Dtiles格式,所以在加载之前需要将其转换为3Dtiles格式。在cesium的数据转换中,可借助cesiumlab工具。
数据转换:倾斜模型转换(osgb——json)
转换之后的数据格式为可供cesium加载的3Dtiles格式(tileset.json)。
因为之前所使用的数据量都是小场景,且转换工具使用其他,并没有注意到数据的差别,当大场景数据频繁奔溃之后,才着手解决此事,在对比过程中发现,其他转换工具得到的3Dtiles倾斜数据加载比较快,但是加载时刻出现建筑物模糊的情况,并且加载之后并不会因为视野的移动而消失;在cesiumlab转换的数据而言,加载过程卡顿,建筑物清晰,并在移动过程会保持中心点建筑物清晰,其余部分会消失。
原因:目前cesiumlab3更加的方便,而在cesium3中,其转换的数据,图层中b3dm所对应的索引json只有一个,这是cesiumlab3升级之后的正确规范,更正了cesiumlab2中多个索引的问题(而卡顿的原因也似乎跟这个有关系)
带着这个发现,重新转换数据,改用cesiumlab2(个人觉得这个版本还是不错)
数据转换:选择倾斜模型转换V3(散列输出),其他的默认即可。
最后,果然速度加快了很多,而且并不会出现卡出奔溃的现象。
CesiumLab--倾斜数据的终极优化方案 - Cesium实验室