通过geoserver发布地图瓦片数据

最近项目需要离线部署地图服务,中间找了一个合作的公司。现在项目接近尾声,总体感觉合作的公司不成熟,我们自己之前更是没有接触过这种地理信息服务相关的业务,中间也有各种甩锅的经历,这不是重点就不细说了。

项目始于Cesium, 中间结合了倾斜模型,模型单体化,离线地图服务部署。今天 主要说一下离线地图服务部署的问题。

  • 地图数据来源

离线地图数据来源,这里需要瓦片数据,一般有好多公司提供下载,但是有些收费,这里有个链接,可以参考一下https://blog.csdn.net/u011365716/article/details/84444115,貌似提供免费的地图服务下载器。一般超过18级地图普遍是要收费的,这里有个精度对比,水经注需要转发,比较坑

通过geoserver发布地图瓦片数据_第1张图片

通过geoserver发布地图瓦片数据_第2张图片

到这里假设已经下载好离线地图瓦片数据,开始部署geoserver服务。

  • geoserver 服务安装启动

geoserver 需要安装JDK环境,不赘述了。geoserver提供windows和Linux的版本,下载对应的文件,解压,运行就可以。geoserver默认端口8080,修改端口在

通过geoserver发布地图瓦片数据_第3张图片

 然后到bin目录下,运行对应的脚本。启动成功

通过geoserver发布地图瓦片数据_第4张图片

  •  geoserver 部署
  1. 创建工作空间

通过geoserver发布地图瓦片数据_第5张图片

 

 通过geoserver发布地图瓦片数据_第6张图片

 

  1. 网格策略
  2. 数据存储

然后把下载的瓦片数据放到 data_dir文件夹下

通过geoserver发布地图瓦片数据_第7张图片

 

通过geoserver发布地图瓦片数据_第8张图片

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

 通过geoserver发布地图瓦片数据_第9张图片

通过geoserver发布地图瓦片数据_第10张图片

通过geoserver发布地图瓦片数据_第11张图片

通过geoserver发布地图瓦片数据_第12张图片

通过geoserver发布地图瓦片数据_第13张图片

通过geoserver发布地图瓦片数据_第14张图片

 

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

animation: false,

baseLayerPicker: true,

geocoder: true,

timeline: false,

sceneModePicker: true,

navigationHelpButton: false,

infoBox: true

});

viewer.imageryLayers.removeAll();

//加载GeoServer:呼和浩特地图

viewer.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider({

url: "http://localhost:9090/geoserver/gwc/service/wmts",

layer: 'dy:huhot',

style: '',

format: 'image/png',

tileMatrixSetID: 'EPSG:3857',

tileMatrixLabels: ['EPSG:3857:0', 'EPSG:3857:1', 'EPSG:3857:2', 'EPSG:3857:3', 'EPSG:3857:4', 'EPSG:3857:5', 'EPSG:3857:6', 'EPSG:3857:7', 'EPSG:3857:8'],

maximumLevel: 9,

credit: new Cesium.Credit('HHUAV WMTS')

}));

通过geoserver发布地图瓦片数据_第15张图片 

 

上面就是使用Cesium加载发布的wmts服务后显示的地图,我们也可以看一下wmts服务的组织结构

替换对应的端口和IP,地址http://localhost:6688/geoserver/gwc/service/wmts?REQUEST=getcapabilities

通过geoserver发布地图瓦片数据_第16张图片

你可能感兴趣的:(Gis)