Interfejs Map Management API umożliwia programowe zarządzanie zasobami definiowania stylów map w Google Cloud w punktach końcowych v2alpha (eksperymentalny) i v2beta (wersja testowa).
Podsumowanie operacji
Aby zwizualizować mapę niestandardową za pomocą interfejsu Map Management API, wykonaj te najważniejsze czynności:
- Utwórz StyleConfig: zdefiniuj wygląd mapy za pomocą reprezentacji JSON ustawień kolorów, widoczności i gęstości.
- Utwórz MapConfig: utwórz unikalny identyfikator mapy, który będzie działać jako kontener dla tożsamości mapy i jej funkcji wysokiego poziomu.
- Powiąż je z MapContextConfig: połącz
StyleConfig(i opcjonalne zbiory danych) z konkretnymi wariantami mapy (np.ROADMAPlubSATELLITE) w ramachMapConfig.
Działania domyślne
Podczas korzystania z punktów końcowych w wersji 2 pamiętaj o tych działaniach domyślnych:
- Typ mapy: domyślny typ renderowania mapy to
RASTER. Aby używać map wektorowych, musisz wyraźnie ustawićmap_typenaVECTORwMapConfig. - Wariant mapy: jeśli podczas tworzenia
MapContextConfignie określonomap_variants, konfiguracja zostanie domyślnie zastosowana tylko do wariantuROADMAP. - Styl podstawowy: jeśli parametr
json_style_sheetjest pusty lub nie został podany w obiekcieStyleConfig, zostanie użyta domyślna mapa podstawowa Google bez stylu.
Praca z obiektami StyleConfig
StyleConfig zawiera definicje stylów w formacie JSON.
Tworzenie obiektu 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}]}]"
}'Wyświetlanie listy StyleConfigs
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/styleConfigs
Praca z MapConfigs
MapConfig określa tożsamość i podstawowy typ renderowania mapy.
Tworzenie obiektu 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"
}'Praca z MapContextConfigs
MapContextConfig łączy stylizację z MapConfig.
Tworzenie obiektu 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"]
}'Błędy
- PERMISSION_DENIED: żądanie nie ma wystarczających uprawnień lub w projekcie nie włączono interfejsu API.
- NOT_FOUND: określony zasób (Project, MapConfig lub StyleConfig) nie istnieje.
- INVALID_ARGUMENT: treść żądania jest nieprawidłowo sformed lub zawiera nieprawidłowe wartości pól.