สคีมา JSON สำหรับการจัดรูปแบบแผนที่ในระบบคลาวด์ช่วยให้คุณใช้ JSON เพื่อปรับแต่งแผนที่ได้เช่นเดียวกับการใช้อินเทอร์เฟซของเครื่องมือแก้ไขสไตล์ เอกสารนี้อธิบายสคีมา JSON และวิธีสร้างการประกาศรูปแบบ JSON
หากต้องการทราบวิธีแก้ไขรูปแบบแผนที่โดยใช้ JSON ภายในเครื่องมือแก้ไขสไตล์ หรือจะนำเข้าและส่งออกรูปแบบแผนที่ โปรดดูที่ ใช้ JSON กับการจัดรูปแบบแผนที่ในระบบคลาวด์
ดูตัวอย่างการประกาศรูปแบบ JSON
การประกาศรูปแบบ JSON ต่อไปนี้จะตั้งค่าสีพื้นหลัง จากนั้นกำหนดรูปแบบสำหรับจุดสนใจ สวนสาธารณะ และแหล่งน้ำ รวมถึงซ่อนป้ายกำกับสำหรับสถานที่ตั้งของอาหารและเครื่องดื่ม
{
"variant": "light",
"styles": [
{
"id": "natural.land",
"geometry": {
"fillColor": "#f7e3f7"
}
},
{
"id": "natural.water",
"geometry": {
"fillColor": "#d4b2ff"
},
"label": {
"textFillColor": "#3d2163",
"textStrokeColor": "#f0e1ff"
}
},
{
"id": "pointOfInterest",
"label": {
"pinFillColor": "#e0349a",
"textFillColor": "#a11e6e",
"textStrokeColor": "#ffd9f0"
}
},
{
"id": "pointOfInterest.emergency.hospital",
"geometry": {
"fillColor": "#ffe3e3"
}
},
{
"id": "pointOfInterest.foodAndDrink",
"label": {
"visible": false
}
},
{
"id": "pointOfInterest.recreation.park",
"geometry": {
"fillColor": "#f9b9d2"
}
}
]
}
ออบเจ็กต์ JSON
การประกาศรูปแบบ JSON ประกอบด้วยออบเจ็กต์ระดับบนสุดและอาร์เรย์ของกฎรูปแบบ
- การตั้งค่าระดับบนสุด (ไม่บังคับ) - การตั้งค่ารูปแบบส่วนกลาง เช่น
backgroundColorและvariant styles- อาร์เรย์ของออบเจ็กต์กฎรูปแบบ ซึ่งประกอบด้วยข้อมูลต่อไปนี้:id- องค์ประกอบในแผนที่ที่จะเลือกสำหรับการแก้ไขรูปแบบนี้ (เช่นpointOfInterest.recreation.park)geometry(ไม่บังคับ) - องค์ประกอบทางเรขาคณิตขององค์ประกอบในแผนที่และกฎรูปแบบที่จะใช้ (เช่นfillColor)label(ไม่บังคับ) - ป้ายกำกับข้อความหรือหมุดขององค์ประกอบในแผนที่และกฎรูปแบบที่จะใช้ (เช่นtextStrokeColor)
การตั้งค่าระดับบนสุด
พร็อพเพอร์ตี้ในตารางต่อไปนี้ใช้กับรูปแบบแผนที่ทั้งหมด
| พร็อพเพอร์ตี้ | ประเภท | คำอธิบาย | ตัวอย่าง |
|---|---|---|---|
|
สตริง | ปรับแต่งสีพื้นหลังของแอปแผนที่โดยใช้สตริงเลขฐาน 16 #RRGGBB การตั้งค่านี้ไม่รองรับการเปลี่ยนแปลงความทึบแสง | "#002211" |
|
"light"|"dark" | ระบุโหมดสว่างหรือโหมดมืด หากไม่ได้ระบุไว้ ระบบจะใช้ "light" เป็นค่าเริ่มต้น | "light" |
|
บูลีน | หากต้องการเปิดใช้สีเดียว ให้ใช้ true สำหรับแผนที่เวอร์ชันสีเทา |
|
ออบเจ็กต์กฎรูปแบบ
ส่วนนี้อธิบายพร็อพเพอร์ตี้ที่กำหนดออบเจ็กต์กฎรูปแบบในอาร์เรย์ styles เพื่อปรับแต่งฟีเจอร์แผนที่ ออบเจ็กต์กฎรูปแบบแต่ละรายการต้องประกอบด้วยข้อมูลต่อไปนี้
- พร็อพเพอร์ตี้
id - องค์ประกอบ
geometryหรือlabelที่กำหนดพร็อพเพอร์ตี้ของเครื่องมือจัดรูปแบบที่เชื่อมโยง
id (องค์ประกอบในแผนที่)
พร็อพเพอร์ตี้ id จะระบุองค์ประกอบในแผนที่ที่จะจัดรูปแบบ ชื่อพร็อพเพอร์ตี้เป็นเวอร์ชัน Camel Case ของชื่อองค์ประกอบในแผนที่ในเครื่องมือแก้ไขสไตล์
ฟีเจอร์แผนที่สร้างเป็นแผนผังหมวดหมู่ หากคุณระบุประเภทฟีเจอร์ระดับบน
เช่น pointOfInterest รูปแบบที่คุณระบุสำหรับระดับบนจะใช้กับระดับล่างทั้งหมด
เช่น pointOfInterest.retail และ pointOfInterest.lodging
ดูรายละเอียดได้ที่ ลำดับชั้นขององค์ประกอบในแผนที่
รายการพร็อพเพอร์ตี้ id ที่ใช้ได้
พร็อพเพอร์ตี้ id ที่ใช้ได้มีดังนี้
pointOfInterestpointOfInterest.emergencypointOfInterest.emergency.firepointOfInterest.emergency.hospitalpointOfInterest.emergency.pharmacypointOfInterest.emergency.policepointOfInterest.entertainmentpointOfInterest.entertainment.artspointOfInterest.entertainment.casinopointOfInterest.entertainment.cinemapointOfInterest.entertainment.historicpointOfInterest.entertainment.museumpointOfInterest.entertainment.themeParkpointOfInterest.entertainment.touristAttractionpointOfInterest.foodAndDrinkpointOfInterest.foodAndDrink.barpointOfInterest.foodAndDrink.cafepointOfInterest.foodAndDrink.restaurantpointOfInterest.foodAndDrink.winerypointOfInterest.landmarkpointOfInterest.lodgingpointOfInterest.recreationpointOfInterest.recreation.beachpointOfInterest.recreation.boatingpointOfInterest.recreation.fishingpointOfInterest.recreation.golfCoursepointOfInterest.recreation.hotSpringpointOfInterest.recreation.natureReservepointOfInterest.recreation.parkpointOfInterest.recreation.peakpointOfInterest.recreation.sportsComplexpointOfInterest.recreation.sportsFieldpointOfInterest.recreation.trailheadpointOfInterest.recreation.zoopointOfInterest.retailpointOfInterest.retail.grocerypointOfInterest.retail.shoppingpointOfInterest.servicepointOfInterest.service.atmpointOfInterest.service.bankpointOfInterest.service.carRentalpointOfInterest.service.evChargingpointOfInterest.service.gasStationpointOfInterest.service.parkingLotpointOfInterest.service.postOfficepointOfInterest.service.restStoppointOfInterest.service.restroompointOfInterest.transitpointOfInterest.transit.airportpointOfInterest.otherpointOfInterest.other.bridgepointOfInterest.other.cemeterypointOfInterest.other.governmentpointOfInterest.other.librarypointOfInterest.other.militarypointOfInterest.other.placeOfWorshippointOfInterest.other.schoolpointOfInterest.other.townSquarepoliticalpolitical.countryOrRegionpolitical.borderpolitical.reservationpolitical.stateOrProvincepolitical.citypolitical.sublocalitypolitical.neighborhoodpolitical.landParcelinfrastructureinfrastructure.buildinginfrastructure.building.commercialinfrastructure.businessCorridorinfrastructure.roadNetworkinfrastructure.roadNetwork.noTrafficinfrastructure.roadNetwork.noTraffic.pedestrianMallinfrastructure.roadNetwork.noTraffic.trailinfrastructure.roadNetwork.noTraffic.trail.pavedinfrastructure.roadNetwork.noTraffic.trail.unpavedinfrastructure.roadNetwork.parkingAisleinfrastructure.roadNetwork.rampinfrastructure.roadNetwork.roadinfrastructure.roadNetwork.road.arterialinfrastructure.roadNetwork.road.highwayinfrastructure.roadNetwork.road.localinfrastructure.roadNetwork.road.noOutletinfrastructure.roadNetwork.roadShieldinfrastructure.roadNetwork.roadSigninfrastructure.roadNetwork.roadDetailinfrastructure.roadNetwork.roadDetail.surfaceinfrastructure.roadNetwork.roadDetail.crosswalkinfrastructure.roadNetwork.roadDetail.sidewalkinfrastructure.roadNetwork.roadDetail.intersectioninfrastructure.railwayTrackinfrastructure.railwayTrack.commercialinfrastructure.railwayTrack.commuterinfrastructure.transitStationinfrastructure.transitStation.bicycleShareinfrastructure.transitStation.busStationinfrastructure.transitStation.ferryTerminalinfrastructure.transitStation.funicularStationinfrastructure.transitStation.gondolaStationinfrastructure.transitStation.monorailinfrastructure.transitStation.railStationinfrastructure.transitStation.railStation.subwayStationinfrastructure.transitStation.railStation.tramStationinfrastructure.urbanAreanaturalnatural.continentnatural.archipelagonatural.islandnatural.landnatural.land.landCovernatural.land.landCover.cropsnatural.land.landCover.dryCropsnatural.land.landCover.forestnatural.land.landCover.icenatural.land.landCover.sandnatural.land.landCover.shrubnatural.land.landCover.tundranatural.waternatural.water.oceannatural.water.lakenatural.water.rivernatural.water.othernatural.base
องค์ประกอบ
องค์ประกอบคือส่วนย่อยขององค์ประกอบในแผนที่ ตัวอย่างเช่น ถนนประกอบด้วยเส้นกราฟิก (geometry) บนแผนที่ และข้อความที่ระบุชื่อ (label)
องค์ประกอบต่อไปนี้พร้อมใช้งาน แต่โปรดทราบว่าองค์ประกอบในแผนที่บางรายการอาจไม่รองรับ รองรับบางรายการ หรือรองรับองค์ประกอบทั้งหมด
geometry: เลือกองค์ประกอบทางเรขาคณิตทั้งหมด (เช่น รูปหลายเหลี่ยม เส้นประกอบ) ขององค์ประกอบในแผนที่ที่ระบุlabel: เลือกองค์ประกอบป้ายกำกับทั้งหมด (เช่น ข้อความ หมุด) ขององค์ประกอบในแผนที่ที่ระบุ
เครื่องมือจัดรูปแบบ
เครื่องมือจัดรูปแบบคือวิธีที่คุณกำหนดกฎรูปแบบสำหรับองค์ประกอบแต่ละรายการของฟีเจอร์แผนที่
ตัวอย่างเช่น สำหรับรอยเท้าอาคาร คุณสามารถจัดรูปแบบแต่ละองค์ประกอบได้ดังนี้
ตัวอย่างเครื่องมือจัดรูปแบบ geometry สำหรับอาคาร |
ตัวอย่างเครื่องมือจัดรูปแบบ label สำหรับอาคาร |
|---|---|
| จะซ่อนหรือแสดงรูปหลายเหลี่ยมรอยเท้าอาคารบนแผนที่ | จะซ่อนหรือแสดงป้ายกำกับอาคาร |
| สีและความทึบแสงของสีเติมรูปหลายเหลี่ยม | สีและความทึบแสงของสีเติมข้อความ |
| สี ความทึบแสง และความกว้างของเส้นขอบ | สีและความทึบแสงของเส้นข้อความ |
ส่วนนี้อธิบายตัวเลือกรูปแบบต่างๆ ที่ใช้ได้สำหรับองค์ประกอบ geometry และ label
เครื่องมือจัดรูปแบบ geometry
ตารางต่อไปนี้แสดงเครื่องมือจัดรูปแบบทางเรขาคณิตทั้งหมดที่ใช้ได้
| ตัวจัดรูปแบบ | ประเภท | คำอธิบาย |
|---|---|---|
|
บูลีน | หากต้องการซ่อนรูปหลายเหลี่ยมหรือเส้นประกอบขององค์ประกอบในแผนที่ ให้ตั้งค่าเป็น false |
|
สตริง | ปรับแต่งสีของรูปหลายเหลี่ยมหรือเส้นหลายเส้นด้วยสตริงเลขฐาน 16 RGB |
|
float | ปรับแต่งความทึบแสงของรูปหลายเหลี่ยมหรือเส้นหลายเส้น โดย 0 คือโปร่งใสและ 1 คือทึบแสง |
|
สตริง | ปรับแต่งสีของเส้นขอบด้วยสตริงเลขฐาน 16 RGB |
|
float | ปรับแต่งความทึบแสงของเส้นขอบ โดย 0 คือโปร่งใสและ 1 คือทึบแสง |
|
float | ปรับแต่งความหนาของเส้นขอบตั้งแต่ 0 ถึง 8 |
ดูข้อมูลเพิ่มเติมได้ที่ รูปหลายเหลี่ยมและเส้นหลายเส้น
เครื่องมือจัดรูปแบบ label
ตารางต่อไปนี้แสดงเครื่องมือจัดรูปแบบป้ายกำกับทั้งหมดที่ใช้ได้
| ตัวจัดรูปแบบ | ประเภท | คำอธิบาย |
|---|---|---|
|
บูลีน | หากต้องการซ่อนป้ายกำกับขององค์ประกอบในแผนที่ ให้ตั้งค่าเป็น false |
|
สตริง | ปรับแต่งสีของป้ายกำกับข้อความด้วยสตริงเลขฐาน 16 RGB |
|
float | ปรับแต่งความทึบแสงของป้ายกำกับข้อความ โดย 0 คือโปร่งใสและ 1 คือทึบแสง |
|
สตริง | ปรับแต่งสีของเส้นขอบด้วยสตริงเลขฐาน 16 RGB |
|
float | ปรับแต่งความทึบแสงของเส้นขอบ โดย 0 คือโปร่งใสและ 1 คือทึบแสง |
|
float | ปรับแต่งความหนาของเส้นขอบตั้งแต่ 0 ถึง 8 |
|
สตริง | ปรับแต่งสีหมุดด้วยสตริงเลขฐาน 16 RGB |
ดูข้อมูลเพิ่มเติมได้ที่ ไอคอนและป้ายกำกับข้อความ
ระดับการซูมหลัก
คุณสามารถตั้งค่ารูปแบบเดียวสำหรับฟีเจอร์ในระดับคีย์ซูมทั้งหมด หรือระบุรูปแบบต่างๆ สำหรับระดับคีย์ซูมที่แตกต่างกัน หากระบุรูปแบบเดียว ระบบจะใช้รูปแบบนั้นกับระดับการซูมหลักทั้งหมดโดยเริ่มจาก z0 หากระบุรูปแบบสำหรับระดับคีย์ซูมที่แตกต่างกัน ระบบจะใช้รูปแบบนั้นตั้งแต่ระดับการซูมนั้นจนถึงระดับการซูมถัดไปที่คุณกำหนด
หากต้องการตั้งค่าระดับคีย์ซูมสำหรับรูปแบบ ให้กำหนดระดับคีย์ซูมตั้งแต่ z0 ถึง z22 ในพร็อพเพอร์ตี้ของตัวจัดรูปแบบ แล้วกำหนดการปรับแต่งตัวจัดรูปแบบ
ในตัวอย่างต่อไปนี้ น้ำจะมีสีดำตั้งแต่ระดับคีย์ซูม 0-5 สีเทาเข้มตั้งแต่ระดับคีย์ซูม 6-11 และสีเทาอ่อนตั้งแต่ระดับคีย์ซูม 12
{
"id": "natural.water",
"geometry": {
"fillColor": {
"z0": "#000000",
"z6": "#666666",
"z12": "#cccccc"
}
}
}
ดูข้อมูลเพิ่มเติมได้ที่ ระดับการซูมของรูปแบบ
ข้อจำกัด
คุณสามารถใช้ JSON เพื่อจัดรูปแบบเกือบทุกอย่างในคอนโซล Google Cloud ยกเว้นฟีเจอร์ต่อไปนี้จากเมนูการตั้งค่าแผนที่
สำหรับฟีเจอร์เหล่านี้ คุณต้องเลือกค่ากำหนดในเมนู การตั้งค่าแผนที่