1. 程式人生 > >Leaflet載入GeoServer釋出的WMTS地圖服務

Leaflet載入GeoServer釋出的WMTS地圖服務

       leaflet本身並不支援WMTS服務,需要藉助leaflet-tilelayer-wmts外掛實現,但是外掛是為通用WMTS服務實現的。在使用的過程中出現了無法呼叫的問題,這裡進行了稍微修改。

載入地圖

var map = L.map('map', {
    attributionControl: false,
    zoomControl: false,
    measureControl: true,
    center: [21.220817, 109.8864340],
    zoom: 19,
    maxZoom: 40,
    minZoom: 1,
    crs: L.CRS.EPSG4326//設定座標系4326
});

設定座標系左上角座標,3857座標系可以預設不用設定,外掛裡已預設帶有

var matrixIds = [];
for (var i=0; i<22; ++i) {
  matrixIds[i] = {
    identifier : "" + i,
    topLeftCorner : new L.LatLng(90, -180)
  };
}
載入WMTS地圖服務
var ign = new L.TileLayer.WMTS( "http://192.168.1.177:8080/geoserver/gwc/service/wmts" ,//服務地址
    {
        layer: "raster:pingyuan",//圖層名稱
        tilematrixSet: "EPSG:4326",//GeoServer使用的網格名稱
        tileSize : 256,//切片大小
        format: 'image/png',
        maxZoom: 33,
        minZoom: 10,
        matrixIds: matrixIds,
    }
   );

最終結果如下所示:


修改後的外掛地址為https://github.com/GISHanBo/leaflet-tilelayer-wmts