Вы можете использовать API управления картами для программного управления ресурсами оформления облачных карт как в экспериментальной ( v2alpha ), так и в предварительной ( v2beta ) версиях.
Краткий обзор операций
Для визуализации пользовательской карты с помощью API управления картами выполните следующие ключевые шаги:
- Создайте StyleConfig : определите визуальный вид вашей карты, используя JSON-представление настроек цветов, видимости и плотности.
- Создайте MapConfig : задайте уникальный идентификатор карты (Map ID), который будет служить контейнером для идентификации вашей карты и ее основных характеристик.
- Свяжите их с MapContextConfig : свяжите ваш
StyleConfig(и дополнительные наборы данных) с конкретными вариантами карт (например,ROADMAPилиSATELLITE) в вашемMapConfig.
Поведение по умолчанию
При использовании конечных точек версии 2 следует учитывать следующие параметры по умолчанию:
- Тип карты : По умолчанию используется тип отображения карты
RASTER. Для использования векторных карт необходимо явно установитьmap_typeвVECTORв файлеMapConfig. - Вариант карты : Если при создании
MapContextConfigне указаныmap_variants, конфигурация по умолчанию будет применяться только к вариантуROADMAP. - Базовые стили : Если поле
json_style_sheetпустое или не указано вStyleConfig, будет использоваться стандартная карта Google Base без стилей.
Работа со StyleConfigs
Объект StyleConfig содержит определения стилей в формате JSON.
Создайте StyleConfig
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/styleConfigs \
-d '{
"display_name": "My Custom Style",
"json_style_sheet": "[{\"featureType\":\"all\",\"stylers\":[{\"saturation\":-100}]}]"
}'Список StyleConfigs
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/styleConfigs
Работа с MapConfigs
MapConfig определяет идентификатор и основной тип отрисовки карты.
Создайте MapConfig
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/mapConfigs \
-d '{
"display_name": "My New Map",
"map_type": "VECTOR"
}'Работа с MapContextConfigs
Объект MapContextConfig связывает стили с объектом MapConfig .
Создайте MapContextConfig
curl -X POST \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "Content-Type: application/json" \
https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/mapConfigs/YOUR_MAP_ID/mapContextConfigs \
-d '{
"style_config": "projects/YOUR_PROJECT_ID/styleConfigs/YOUR_STYLE_ID",
"map_variants": ["ROADMAP", "NAVIGATION"]
}'Ошибки
- PERMISSION_DENIED : Запрос не имеет достаточных прав IAM или в проекте не включен API.
- NOT_FOUND : Указанный ресурс (Project, MapConfig или StyleConfig) не существует.
- INVALID_ARGUMENT : Тело запроса имеет некорректный формат или содержит недопустимые значения полей.