最近的業務需求要求將一張tiff影像加載到cesium的地形上,網上查閱了很多資料,有很多的方法。結合我的業務需求需要使用開源軟件,所以我考慮用geoserver發佈wms以及wmts服務,然後cesium來調用。
首先我需要在geoserver上將tiff影像發佈爲wms服務,進而將wms服務通過切片生成wmts服務。網上給了很多解決方案,發現都是搬的GIS之家的文章,但是這篇文章寫的真的不是太清楚。
鏈接:https://www.cnblogs.com/giserhome/p/7774548.html
下面我就我的經驗進行詳細的介紹。
1.首先是根據tiff發佈wms服務。
第一步:進入geoserver後,點擊工作區,然後選擇“添加新的工作區”
新建工作區:
新建完成
第二步:添加數據存儲,導入我們要發佈的tiff影像
選擇GeoTIFF數據源
第三步:發佈數據
第四步:預覽圖層及參數獲取
進入後,打開f12,刷新看network下的請求,隨意點擊一個wms請求,查看詳細信息。
第五步:cesium加載wms服務。
記住上一步幾個參數後,在cesium中用如下代碼調用:
var provider = new Cesium.WebMapServiceImageryProvider({
url: 'http://112.***.**.**2:8080/geoserver/gwc/service/wms', //第一個url參數
layers: 'kj:kjtiff2', //參數集合2 ,這裏填充
parameters: {
service : 'WMS',
format: 'image/png',
transparent: true
}
});
viewer.imageryLayers.addImageryProvider(provider);
調用結果:
我自己的亞太地區tiff影像就加上去了,其他地區的用了cesium默認的影像。
後續補充wmts服務的發佈及調用。