Puoi utilizzare l'API di gestione delle mappe per gestire in modo programmatico le risorse di personalizzazione delle mappe basate su cloud sia negli endpoint v2alpha (sperimentale) sia in quelli v2beta (anteprima).
Riepilogo delle operazioni
Per visualizzare una mappa personalizzata con l'API di gestione delle mappe, segui questi passaggi chiave:
- Crea uno StyleConfig: definisci l'aspetto visivo della mappa utilizzando una rappresentazione JSON delle impostazioni di colori, visibilità e densità.
- Crea un MapConfig: stabilisci un ID mappa univoco che funga da contenitore per l'identità e le funzionalità di alto livello della mappa.
- Associali a un MapContextConfig: collega il tuo
StyleConfig(e i set di dati facoltativi) a varianti di mappa specifiche (comeROADMAPoSATELLITE) all'interno del tuoMapConfig.
Comportamenti predefiniti
Quando utilizzi gli endpoint v2, tieni presente i seguenti comportamenti predefiniti:
- Tipo di mappa: il tipo di rendering della mappa predefinito è
RASTER. Per utilizzare le mappe basate su vettori, devi impostare esplicitamentemap_typesuVECTORnel tuoMapConfig. - Variante mappa: se non vengono specificati
map_variantsdurante la creazione di unMapContextConfig, la configurazione verrà applicata solo alla varianteROADMAPper impostazione predefinita. - Stile di base: se un
json_style_sheetè vuoto o non viene fornito in unStyleConfig, verrà utilizzata la mappa base di Google predefinita senza stile.
Utilizzo di StyleConfig
Un StyleConfig contiene le definizioni degli stili basati su JSON.
Crea uno 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}]}]"
}'Elenca StyleConfig
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/styleConfigs
Utilizzo di MapConfig
Un MapConfig definisce l'identità e il tipo di rendering principale di una mappa.
Crea un 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"
}'Utilizzo di MapContextConfigs
Un MapContextConfig collega lo stile a un MapConfig.
Crea un 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"]
}'Errori
- PERMISSION_DENIED: la richiesta non dispone di autorizzazioni IAM sufficienti o l'API non è abilitata per il progetto.
- NOT_FOUND: la risorsa specificata (Project, MapConfig o StyleConfig) non esiste.
- INVALID_ARGUMENT: il corpo della richiesta non è corretto o contiene valori di campo non validi.