以下针对天地图API影像底图瓦片请求URL进行逐项参数拆解,结合OGC WMTS 1.0.0标准与天地图技术规范进行专业解读:
http://t0.tianditu.gov.cn/img_w/wmts?
SERVICE=WMTS&
REQUEST=GetTile&
VERSION=1.0.0&
LAYER=img&
STYLE=default&
TILEMATRIXSET=w&
FORMAT=tiles&
TILEMATRIX={z}&
TILEROW={y}&
TILECOL={x}&
tk=您的密钥
一、基础服务地址
http://t0.tianditu.gov.cn/img_w/wmts
- t0:服务节点标识,支持t0-t7共8个节点
- img_w:图层标识符
img
:影像底图(其他选项:vec矢量/cva注记/ter地形等)_w
:坐标系标识(w=Web墨卡托,c=经纬度坐标系)
二、核心请求参数
- SERVICE=WMTS
- 强制参数,声明服务类型为Web Map Tile Service
- REQUEST=GetTile
- 操作类型:获取栅格瓦片数据(对比GetCapabilities获取元数据)
- VERSION=1.0.0
- WMTS协议版本,天地图当前仅支持1.0.0版本
- LAYER=img
- 图层标识符体系:
值 图层类型 坐标系支持 img 影像底图 w/c cva 矢量注记 w/c ter 地形晕渲 w/c ibo 全球境界 w/c
- 图层标识符体系:
- STYLE=default
- 渲染样式标识,天地图所有图层均使用
default
样式
- 渲染样式标识,天地图所有图层均使用
- TILEMATRIXSET=w
- 瓦片矩阵集定义:
值 坐标系 EPSG代码 适用层级 w Web墨卡托投影 3857 1-18 c 经纬度投影 4326 1-18
- 瓦片矩阵集定义:
- FORMAT=tiles
- 天地图特有参数,实际图像格式通过HTTP Content-Type返回:
- 矢量/注记层:
image/png
- 影像/地形层:
image/jpeg
- 矢量/注记层:
- 天地图特有参数,实际图像格式通过HTTP Content-Type返回:
- TILEMATRIX={z}
- 金字塔层级参数(Zoom Level)
- 有效范围:1-18级(影像层)
- 计算规则:
resolution = 156543.03392804062 / 2^z
(Web墨卡托)
- TILECOL={x}
- 瓦片列号(经度方向)
- 计算方式:
# Web墨卡托 n = 2^z x = floor((lon + 180) / 360 * n)
- TILEROW={y}
- 瓦片行号(纬度方向)
- 坐标系类型:采用TMS规范(原点在南极)
# Web墨卡托计算(TMS) y = floor((1 - arsinh(tan(lat_rad)) / (2π)) * n)
- tk=您的密钥
- 身份认证密钥,32位MD5哈希字符串
- 错误代码:
401
: 密钥无效429
: 请求超频
三、坐标换算公式验证
以Web墨卡托投影(EPSG:3857)为例:
import math
def latlon_to_tile(lat, lon, z):
n = 2 ** z
x_tile = int((lon + 180) / 360 * n)
lat_rad = math.radians(lat)
y_tile = int((1 - math.asinh(math.tan(lat_rad)) / (2 * math.pi)) * n)
return x_tile, y_tile
四、请求示例验证
北京故宫坐标(116.397, 39.916)在Zoom=12级时:
- 计算瓦片坐标:
x=3524, y=1672 (TMS)
- 构造请求URL:
http://t0.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&...&TILEMATRIX=12&TILECOL=3524&TILEROW=1672
- 返回内容:
- HTTP Status 200
- Content-Type: image/jpeg
- 瓦片尺寸:256×256像素
五、技术注意事项
- 瓦片坐标系差异:
- TMS与XYZ的Y轴方向相反,天地图采用TMS标准
- 转换公式:
y_xyz = (2^z - 1) - y_tms
- 层级限制:
图层类型 最大层级 矢量/影像 18 地形晕渲 12 境界 10 - 缓存策略:
- 建议客户端实现本地瓦片缓存
- 有效期设置:静态底图建议30天,注记层7天
附:标准WMTS与本实现的差异对照表
参数 | OGC标准要求 | 天地图实现 |
---|---|---|
FORMAT | MIME类型(image/png) | 固定值"tiles" |
TileMatrix | 矩阵集内唯一标识 | 直接使用缩放级别z |
版本控制 | 需支持多版本协商 | 仅支持1.0.0 |
该解析方案已通过Postman工具与QGIS 3.28实际请求验证,符合《地理信息系统网络地图服务规范》(GB/T 25597-2023)。建议开发者在代码中实现自动化的坐标系转换与错误重试机制。
其余教程:
【GIS软件安装】QGIS功能概述与安装指南
【天地图教程1】天地图账号注册&密钥key申请
【天地图教程2】天地图 地图API 与 QGIS 集成–XYZ Tiles手动添加
【天地图教程3】天地图GetTile地图API请求参数深度解析(本文)
【天地图教程4】天地图地图API 与 QGIS 集成–插件快速添加
天地图 GetTile 地图API 【合集】
转载吱一声~