cesium地图瓦片404默认显示某张图片

如题所述

采用JavaScript的方式来加载图片。
以Cesium默认加载的bingmapstilesystem为例。其地图以一种四叉树的方式进行存储和加载。每当放大地图时,会根据放大层级以及当前区域加载对应子层级的地图图片,在浏览器进行拼接展示。
如果考虑网络不可用的场景,就需要构建本地Maps的服务。比较可行的方案是根据url规则,将需要的地图瓦片数据批量下载到本地服务器,并根据quadkey和TileXY的映射关系配置路由,cesium的地图源的请求改成从本地服务器获取。当前有对应脚本工具对瓦片数据进行批量下载,唯一问题是数据量有些大。中国范围内如果地图缩放支持到16级的卫星地图影像,中国的地图数据有图片约1.17亿张。放大到16级大概是下面效果,地面分辨率2.39m每像素。所以如果使用此方案,需要:首先根据我们实际需要下载对应区域、对应缩放层级的瓦片数据,如国外区域只下载部分层级,国内下载到16级,避免用到的数据占用太大。然后有足够空间、有服务器存放瓦片数据,同时在此服务器上部署Maps服务,并配置好请求路由映射。最后修改cesium对应的配置,改成三维地图图片加载走自己部署的Maps服务器,对应Viewer初始化时候配置imageryProvider参数。
温馨提示:答案为网友推荐,仅供参考
相似回答