OGC 服务参考http://support.supermap.com.cn/DataWarehouse/WebDocHelp/iserver810/API/OGC_intro.htm
高德地图、天地图(WMTS)、ArcGIS(WMS)
1.WMTS调用(天地图)
GetCapabilities 请求
天地图
http://lbs.tianditu.gov.cn/server/MapService.html
矢量底图为参考案例
下面看看元数据和瓦片数据,官网这边元数据格式稍微不太对根据上面应该还需tk密钥
元完整请求:http://t0.tianditu.gov.cn/img_w/wmts?request=GetCapabilities&service=wmts&tk=你的密钥
地图瓦片就是需要的参数,我使用的是高德地图TileMatrixSet、TileRow、TileCol、Request
可以看到上述几个参数是不需要填写的,这些相当于单个图片的经纬度和请求方式这些是高德自动补全的,需要填写的参数如下
通过对照不难发现其实就是地图瓦片&传的参数,因为我使用的高德地图会给我拼接一些无用的参数
var wmsText = new AMap.TileLayer.WMTS({
blend: false,
url: 'https://t0.tianditu.gov.cn/cva_w/wmts',
tileSize: 256,
// zooms: [4, 17],
params: {
SERVICE:'WMTS',
VERSION:'1.0.0',
REQUEST:'GetTile',
LAYER:'vec',
STYLE:'default',
TILEMATRIXSET:'w',
FORMAT:'tiles',
tk:'密钥'
}
});
wmsText.url = “https://t0.tianditu.gov.cn/cva_w/wmts?SERVICE=WMTS&VERSION=1.0.0&REQUEST=GetTile&LAYER=cva&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&tk=密钥”;
直接使用了.url避免给我增加坐标系等参数导致天地图无法使用,上述的TileMatrixSet、TileRow、TileCol、Request也会在请求的时候拼接上
2.WMS调用(ArcGIS)
GetMap请求
ArcGIS我使用的GetMap请求看一下OGC服务请求案例
然后再看一下高德地图的说明文档
因此需要的参数
var wmsView = new AMap.TileLayer.WMS({
blend: false,
url: 'http/WMSServer',
tileSize: 256,
// zooms: [4, 17],
params: {
VERSION:'1.3.0',
LAYERS:'0',
STYLES:'',
FORMAT:'image/png'
}
});
不同的请求方式套路是一样的,看看&的参数还有自己地图的文档。