คุณสามารถใช้ Map Management API เพื่อจัดการทรัพยากรการจัดรูปแบบแผนที่ในระบบคลาวด์แบบเป็นโปรแกรมได้ทั้งในปลายทาง v2alpha
(ทดลอง) และ v2beta (ตัวอย่าง)
สรุปการดำเนินการ
หากต้องการแสดงภาพแผนที่แบบกำหนดเองด้วย Map Management API ให้ทำตามขั้นตอนสำคัญต่อไปนี้
- สร้าง StyleConfig: กำหนดลักษณะที่ปรากฏของแผนที่โดยใช้การแสดงสี ระดับการมองเห็น และการตั้งค่าความหนาแน่นในรูปแบบ JSON
- สร้าง MapConfig: สร้างรหัสแผนที่ที่ไม่ซ้ำกันซึ่งทำหน้าที่เป็นคอนเทนเนอร์ สำหรับข้อมูลประจำตัวและฟีเจอร์ระดับสูงของแผนที่
- เชื่อมโยงกับ MapContextConfig: ลิงก์
StyleConfig(และชุดข้อมูลที่ไม่บังคับ) กับรูปแบบแผนที่ต่างๆ (เช่นROADMAPหรือSATELLITE) ภายในMapConfig
ลักษณะการทำงานเริ่มต้น
เมื่อใช้ปลายทาง v2 โปรดคํานึงถึงลักษณะการทํางานเริ่มต้นต่อไปนี้
- ประเภทแผนที่: ประเภทการแสดงแผนที่เริ่มต้นคือ
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}]}]"
}'แสดงรายการ StyleConfig
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ https://mapmanagement.googleapis.com/v2beta/projects/YOUR_PROJECT_ID/styleConfigs
การทำงานกับ MapConfig
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: เนื้อหาคำขอมีรูปแบบไม่ถูกต้องหรือมีค่าฟิลด์ที่ไม่ถูกต้อง