אתם יכולים להשתמש ב-Map Management API כדי לנהל באופן פרוגרמטי את המשאבים של עיצוב מפות מבוסס-ענן, גם בנקודות הקצה של v2alpha (ניסיוני) וגם בנקודות הקצה של v2beta (גרסת טרום-השקה).
סיכום הפעולות
כדי להציג מפה בהתאמה אישית באמצעות Map Management API, צריך לבצע את השלבים העיקריים הבאים:
- יצירת StyleConfig: מגדירים את המראה החזותי של המפה באמצעות ייצוג JSON של הצבעים, החשיפה והצפיפות.
- יצירת MapConfig: יוצרים מזהה מפה ייחודי שמשמש כמאגר לזהות של המפה ולתכונות ברמה גבוהה.
- משייכים אותם ל-MapContextConfig: מקשרים את
StyleConfig(וקבוצות נתונים אופציונליות) לווריאציות ספציפיות של מפות (כמוROADMAPאוSATELLITE) בתוךMapConfig.
התנהגויות ברירת מחדל
כשמשתמשים בנקודות הקצה של גרסה 2, חשוב לזכור את פעולות ברירת המחדל הבאות:
- סוג המפה: סוג העיבוד של המפה שמוגדר כברירת מחדל הוא
RASTER. כדי להשתמש במפות וקטוריות, צריך להגדיר באופן מפורש אתmap_typeל-VECTORב-MapConfig. - גרסת מפה: אם לא צוינו
map_variantsכשנוצרMapContextConfig, כברירת מחדל ההגדרות האישיות יחולו רק על הגרסהROADMAP. - סגנון בסיסי: אם
json_style_sheetריק או לא צוין ב-StyleConfig, המערכת תשתמש במפה הבסיסית של Google כברירת מחדל ללא סגנון.
עבודה עם 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 מגדיר את הזהות ואת סוג העיבוד (rendering) העיקרי של המפה.
יצירת 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: המשאב שצוין (פרויקט, MapConfig או StyleConfig) לא קיים.
- INVALID_ARGUMENT: גוף הבקשה לא תקין או מכיל ערכי שדות לא תקינים.