1. 天地图影像服务概述
天地图作为国家地理信息公共服务平台,提供了丰富的地理空间数据服务,包括矢量地图、影像地图、地形图等多种数据类型。其中影像地图服务尤为开发者关注,它提供了高分辨率的卫星影像和航拍影像数据,覆盖全国范围。
天地图影像服务采用标准的WMTS(Web Map Tile Service)协议提供服务,支持多种坐标系统和投影方式。开发者可以通过RESTful API接口调用这些服务,在WebGIS应用中展示高质量的影像底图。
提示:使用天地图服务需要先申请开发者密钥(key),这是调用所有天地图服务的必要凭证。申请过程完全免费,只需在天地图官网注册账号即可获取。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 二维地图加载天地图影像
2.1 Leaflet框架集成方案
Leaflet作为轻量级的二维地图库,是加载天地图影像的理想选择。以下是完整的集成代码示例:
javascript复制// 初始化地图
var map = L.map('map').setView([39.9042, 116.4074], 12);
// 天地图影像图层
var tdtImgLayer = L.tileLayer(
'http://t{s}.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=您的密钥',
{
subdomains: ['0', '1', '2', '3', '4'],
attribution: '© 天地图'
}
).addTo(map);
// 天地图标注图层
var tdtCvaLayer = L.tileLayer(
'http://t{s}.tianditu.gov.cn/cva_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}&tk=您的密钥',
{
subdomains: ['0', '1', '2', '3', '4']
}
).addTo(map);
这段代码实现了:
- 创建基础地图容器
- 加载天地图影像底图(img_w服务)
- 叠加天地图矢量标注(cva_w服务)
注意:实际使用时需要将"您的密钥"替换为真实的天地图开发者key。subdomains参数用于负载均衡,可以提高瓦片加载的稳定性和速度。
2.2 常见问题与解决方案
2.2.1 跨域问题处理
在开发环境中,可能会遇到跨域请求被浏览器拦截的情况。解决方法有:
- 配置本地开发服务器代理
- 在天地图控制台配置域名白名单
- 使用nginx反向代理
推荐使用nginx代理方案,配
