mapTypes 端点提供表示各种天气现象(例如降水预报)的光栅地图图块。这些地图图块可以叠加到标准 Google 地图上。
条款
这些条款是根据《Google Maps Platform 服务专用条款》第 6 条(非正式版产品条款)发布的,并经 Google 和您同意。
1.1 标明出处要求。如果客户使用 Weather API 中的 Google 地图内容,则必须按照文档中的规定向 Google 提供署名。
1.2 限制。客户不得使用从 Weather API 检索到的 Google 地图内容来重新创建 Google 服务或产品(例如,在主要用途是提供天气信息的天气应用或天气模型中使用从 Weather API 检索到的数据)。
1.3 缓存。客户可以暂时缓存 Weather API 中适用的 Google 地图 内容,缓存期限如表 1.3.1(缓存权限)中所述。
表 1.3.1(缓存权限)
这些权限是对《Google Maps Platform 服务专用条款》表 17.2.1 中所述权限的补充。
| Google 地图内容 | 缓存期 |
|---|---|
| 天气地图图块 | 1 小时,之后客户必须删除缓存的 Google 地图内容 |
关于天气地图请求
如需请求天气地图,请向以下网址发送 HTTP GET 请求:
https://weather.googleapis.com/v1/mapTypes/{map_type}/mapTiles/{zoom}/{x}/{y}地图类型
Weather API 支持不同的天气地图类型,这些类型对应于不同的底层天气模型和地理区域:
US_PRECIPITATION_CURRENT:美国高分辨率降水临近预报。EU_PRECIPITATION_CURRENT:欧洲高分辨率降水临近预报。
下面的覆盖范围地图显示了提供天气地图图块的区域:

图块坐标系
该 API 使用标准的 Web 墨卡托图块坐标系。如需全面了解地图和图块坐标,请参阅路线图图块和地图和图块坐标。
在此系统中:
zoom:缩放级别(0 到 16)。缩放级别 0 表示整个世界在一个图块中(20 x 20 = 1 个图块)。缩放级别 z 会将世界划分为 2z x 2z 个图块组成的网格。x:图块的 X 坐标(列),范围从 0(最西端)到 2zoom - 1(最东端)。y:图块的 Y 坐标(行),范围从 0(最北端)到 2zoom - 1(最南端)。
显示天气地图
如需使用 Google Maps JavaScript API 在 Web 应用中显示这些图块,您可以创建自定义 google.maps.ImageMapType:
const weatherMapType = new google.maps.ImageMapType({ getTileUrl: function(coord, zoom) { const mapType = "US_PRECIPITATION_CURRENT"; return `https://weather.googleapis.com/v1/mapTypes/${mapType}/mapTiles/${zoom}/${coord.x}/${coord.y}`; }, tileSize: new google.maps.Size(256, 256), maxZoom: 16, minZoom: 0, name: "Weather" }); // Overlay on existing map map.overlayMapTypes.insertAt(0, weatherMapType);
天气地图请求示例
以下示例请求获取新奥尔良的美国降水天气地图图块:
curl -o tile.png -X GET "https://weather.googleapis.com/v1/mapTypes/US_PRECIPITATION_CURRENT/mapTiles/12/1025/1688?key=API_KEY"
响应是二进制。JSON 封装容器仅在特定序列化设置(例如 ?alt=json)下显示。