openlayer2静态wmts服务
因为项目中需要用到 openlayer2
但是因为项目所在的环境为内部局域网,无法访问外部网络
所以地图图块需要自己拼接
最开始想在内网环境搭建一个wmts服务
后来研究了一下
发现requestEncoding可以设置为 rest
这样我们只需要把地图图块按照请求的路径
放到项目静态文件目录对应的文件夹里就可以了
var wmts = new OpenLayers.Layer.WMTS({
name: 'My WMTS Layer',
requestEncoding: 'rest',
url: '/assets',
format: 'image/jpg',
layer: 'map',
style: 'default',
matrixSet: 'img',
version: '1',
isBaseLayer:true
});
map.addLayer(wmts);
// "/${url}/${version}/${layer}/${style}/${matrixSet}/${matrix}/${row}/${col}.jpg"
路径如下
"/${url}/${version}/${layer}/${style}/${matrixSet}/${matrix}/${row}/${col}.jpg"
其中 matrix row col 这三部分是openlayer根据当前地图的缩放和位置自动去请求的