Получить карты погоды (экспериментальная версия)

Конечная точка mapTypes предоставляет растровые фрагменты карты, отображающие различные погодные явления, такие как прогнозы осадков. Эти фрагменты карты можно накладывать на стандартные карты Google Maps.

Условия

Настоящие условия изданы в соответствии с разделом 6 (Условия предоставления услуг до официального запуска) Специальных условий использования платформы Google Maps , согласованных между Google и вами.

1.1 Требования к указанию авторства. Если Заказчик использует контент Google Maps из API погоды, он обязан указать авторство в соответствии с Документацией .

1.2 Ограничения. Клиенты не могут использовать контент Google Maps, полученный из Weather API, для воссоздания сервиса или продукта Google (например, использовать данные, полученные из Weather API, в приложении погоды или модели погоды, основная цель которых — предоставление информации о погоде).

1.3 Кэширование. Клиенты могут временно кэшировать соответствующий контент Google Maps из Weather API на соответствующий период кэширования, как описано в таблице 1.3.1 (Разрешения на кэширование).

Таблица 1.3.1 (Разрешения на кэширование)

Эти разрешения предоставляются в дополнение к тем, которые описаны в Таблице 17.2.1 Специальных условий использования платформы Google Maps.

Контент Google Maps Период кэширования
Плитки карты погоды Через час, после чего Клиент должен удалить кэшированный контент Google Maps.

О запросах на карты погоды

Для запроса карт погоды отправьте HTTP GET-запрос по адресу:

https://weather.googleapis.com/v1/mapTypes/{map_type}/mapTiles/{zoom}/{x}/{y}

Типы карт

API погоды поддерживает различные типы карт погоды, которые соответствуют различным базовым моделям погоды и географическим областям:

  • US_PRECIPITATION_CURRENT : Высокоточный прогноз осадков в США.
  • EU_PRECIPITATION_CURRENT : Высокоточный прогноз осадков в Европе.

На карте ниже показаны регионы, где доступны фрагменты метеорологической карты:

Покрытие плитками карты погоды

Система координат плиток

API использует стандартную систему координат тайлов Web Mercator. Подробное объяснение координат карты и тайлов см. в разделах «Тайтлы дорожной карты» и «Координаты карты и тайлов» .

В этой системе:

  • zoom : Уровень масштабирования (от 0 до 16). Уровень масштабирования 0 представляет весь мир в одном тайле ( 2₀ x 2₀ = 1 тайл). Уровень масштабирования z делит мир на сетку из 2₀ x 2₁ тайлов.
  • x : Координата X (столбец) фрагмента карты, изменяющаяся от 0 (самая западная точка) до 2 - 1 (самая восточная точка ).
  • y : Координата Y (строка) фрагмента, изменяющаяся от 0 (самый северный) до 2 - 1 (самый южный).

Показать карту погоды

Для отображения этих фрагментов карты в веб-приложении с использованием JavaScript API Google Maps можно создать пользовательский объект 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 .