Cesium加载谷歌离线地图

步骤1:获取谷歌离线影像数据

通过谷谷GIS地图下载器下载拼接影像数据,下载拼接后的数据为.tif格式的栅格数据。

 

 

步骤2:处理成影像切片(即瓦片数据,最后有关于瓦片数据的简介)

利用CesiumLab2软件进行影像切割,处理成分级分行分列的.png格式的图像文件(即为瓦片数据)。文件层级:级数/列/行.png。级数每增加一级,分辨率减少为上一级的1/2,例如16级数据的分辨率是2米,17级数据的分辨率是1米,18级数据的分辨率是0.5米。

经过CesiumLab2处理之后输出的数据,按照级数分类,如下图所示,

 

展开1级数据文件夹,里面的文件夹是按照列数分类,如下图所示:

 

 

展开第0列文件夹,里面的图片是按照行来排列的,如下图所示:

 

步骤3:通过Nginx发布瓦片数据

找到nginx.conf文件,使用记事本打开,然后将瓦片数据所在路径配置到服务器,如下图所示。浏览器上输入120.0.0.1:8080/data/tiles,如果可以访问到数据,说明发布成功。

 

 

 

步骤4:Cesium3D地图引擎加载谷歌离线瓦片

核心代码如下:

 this.viewer = new Cesium.Viewer('cesiumContainer', {

        animation: false, // 是否显示动画控件

        baseLayerPicker: true, // 是否显示图层选择控件

        geocoder: true,  //是否显示位置搜索

        timeline: false,  //是否显示时间轴

        sceneModePicker: true,  //是否显示2D、2.5D、3D切换按钮

        navigationHelpButton: false,  //是否显示帮助按钮

      

        // 加载离线瓦片数据

        imageryProvider: new Cesium.UrlTemplateImageryProvider({

          url: 'http://127.0.0.1:8080/data/tiles/{z}/{x}/{y}.png',   //发布到nginx上的URL,其中{z}代表级数、{x}代表列、{y}代表行

          fileExtension: 'png'  //图片格式

        })

      })

加载结果如下图所示

 


版权声明:本文为weixin_38387162原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。