Skema JSON untuk gaya visual peta berbasis cloud memungkinkan Anda menggunakan JSON untuk menyesuaikan peta seperti yang Anda lakukan melalui antarmuka editor gaya. Dokumen ini menjelaskan skema JSON dan cara membuat deklarasi gaya JSON.
Untuk mempelajari cara mengedit gaya peta menggunakan JSON dalam editor gaya, atau untuk mengimpor dan mengekspor gaya peta, lihat Menggunakan JSON dengan gaya visual peta berbasis cloud.
Lihat contoh deklarasi gaya JSON
Deklarasi gaya JSON berikut menetapkan warna latar belakang, lalu menentukan gaya untuk lokasi menarik, taman, fitur air, dan menyembunyikan label untuk lokasi makanan dan minuman.
{
"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"
}
}
]
}
Objek JSON
Deklarasi gaya JSON terdiri dari objek tingkat teratas dan array aturan gaya.
- Setelan tingkat teratas (opsional) - Setelan gaya global seperti
backgroundColordanvariant. styles- Array objek aturan gaya, yang dapat terdiri dari berikut ini:id- Fitur peta yang akan dipilih untuk modifikasi gaya ini (misalnya,pointOfInterest.recreation.park).geometry(opsional) - Elemen geometris fitur peta dan aturan gaya yang akan diterapkan (misalnya,fillColor).label(opsional) - Label teks atau pin fitur peta dan aturan gaya yang akan diterapkan (misalnya,textStrokeColor).
Setelan tingkat teratas
Properti dalam tabel berikut berlaku untuk seluruh gaya peta.
| Properti | Jenis | Deskripsi | Contoh |
|---|---|---|---|
|
String | Sesuaikan warna latar belakang aplikasi peta menggunakan string hex #RRGGBB. Setelan ini tidak mendukung perubahan pada keburaman. | "#002211" |
|
"light"|"dark" | Tentukan mode terang atau gelap. Jika tidak ditentukan, defaultnya adalah "light". | "light" (ringan) |
|
boolean | Untuk mengaktifkan monokrom, gunakan true untuk peta versi abu-abu. |
|
Objek aturan gaya
Bagian ini menjelaskan properti yang menentukan objek aturan gaya dalam array styles untuk menyesuaikan fitur peta. Setiap objek aturan gaya harus terdiri
dari hal berikut:
- properti
id. - Elemen
geometryataulabeldengan properti penata gaya terkait yang ditentukan.
id (fitur peta)
Properti id menentukan fitur peta yang akan diberi gaya. Nama properti adalah
versi camelcase dari nama fitur peta di editor gaya.
Fitur peta membentuk hierarki kategori. Jika Anda menentukan jenis fitur induk, seperti pointOfInterest, gaya yang Anda tentukan untuk induk akan diterapkan ke semua turunannya, seperti pointOfInterest.retail dan pointOfInterest.lodging.
Untuk mengetahui detailnya, lihat Hierarki fitur peta.
Daftar properti id yang tersedia
Properti id yang tersedia adalah sebagai berikut:
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
Elemen
Elemen adalah subdivisi fitur peta. Misalnya, jalan terdiri dari garis grafik (geometry) pada peta, dan juga teks yang menunjukkan namanya (label).
Elemen berikut tersedia, tetapi perhatikan bahwa fitur peta tertentu mungkin tidak mendukung, mendukung sebagian, atau mendukung semua, elemen:
geometry: Memilih semua elemen geometris (misalnya, poligon, polyline) dari fitur peta yang ditentukan.label: Memilih semua elemen label (misalnya, teks, pin) dari fitur peta yang ditentukan.
Styler
Styler adalah cara Anda menentukan aturan gaya untuk setiap elemen fitur peta.
Misalnya, untuk jejak bangunan, Anda dapat menata setiap elemen sebagai berikut:
Contoh penata gaya geometry untuk bangunan |
Contoh penata gaya label untuk bangunan |
|---|---|
| Apakah akan menyembunyikan atau menampilkan poligon jejak bangunan di peta. | Apakah akan menyembunyikan atau menampilkan label bangunan. |
| Warna dan opasitas pengisi poligon. | Warna dan opasitas pengisi teks. |
| Warna, opasitas, dan lebar batas. | Warna dan opasitas goresan teks. |
Bagian ini menjelaskan berbagai opsi gaya yang tersedia untuk elemen
geometry dan label.
geometry styler
Tabel berikut mencantumkan semua penata gaya geometris yang tersedia.
| Styler | Jenis | Deskripsi |
|---|---|---|
|
boolean | Untuk menyembunyikan poligon atau polyline fitur peta, tetapkan ke false. |
|
string | Sesuaikan warna poligon atau polyline dengan string hex RGB. |
|
float | Sesuaikan opasitas poligon atau polyline, dengan 0 transparan dan 1 buram. |
|
string | Sesuaikan warna garis luar dengan string heksadesimal RGB. |
|
float | Sesuaikan opasitas garis tepi, dengan 0 transparan dan 1 buram. |
|
float | Sesuaikan ketebalan garis batas dari rentang 0 hingga 8. |
Untuk mengetahui informasi selengkapnya, lihat Poligon dan Polyline.
label styler
Tabel berikut mencantumkan semua penata gaya label yang tersedia.
| Styler | Jenis | Deskripsi |
|---|---|---|
|
boolean | Untuk menyembunyikan label fitur peta, tetapkan ke false. |
|
string | Sesuaikan warna label teks dengan string hex RGB. |
|
float | Sesuaikan opasitas label teks, dengan 0 transparan dan 1 buram. |
|
string | Sesuaikan warna garis luar dengan string heksadesimal RGB. |
|
float | Sesuaikan opasitas garis tepi, dengan 0 transparan dan 1 buram. |
|
float | Sesuaikan ketebalan garis batas dari rentang 0 hingga 8. |
|
string | Sesuaikan warna pin dengan string hex RGB. |
Untuk mengetahui informasi selengkapnya, lihat Ikon dan label teks.
Zoom kunci
Anda dapat menetapkan satu gaya untuk fitur di semua tingkat keyzoom atau menentukan gaya yang berbeda untuk tingkat keyzoom yang berbeda. Jika Anda hanya memberikan satu gaya, gaya tersebut akan digunakan untuk semua tingkat keyzoom yang dimulai dari z0. Jika Anda memberikan gaya untuk tingkat zoom utama yang berbeda, gaya akan diterapkan dari tingkat zoom tersebut hingga tingkat zoom berikutnya yang telah Anda tentukan.
Untuk menetapkan tingkat keyzoom untuk gaya, di properti penata gaya, tentukan tingkat keyzoom dari z0 hingga z22, lalu penyesuaian penata gaya.
Dalam contoh berikut, warna air adalah hitam dari tingkat keyzoom 0-5, abu-abu gelap dari tingkat keyzoom 6-11, dan abu-abu terang mulai dari tingkat keyzoom 12.
{
"id": "natural.water",
"geometry": {
"fillColor": {
"z0": "#000000",
"z6": "#666666",
"z12": "#cccccc"
}
}
}
Untuk mengetahui informasi selengkapnya, lihat bagian Mengatur gaya tingkat zoom.
Batasan
Anda dapat menggunakan JSON untuk menata gaya hampir semua hal di konsol Google Cloud, kecuali fitur berikut dari menu Setelan Peta:
Untuk fitur ini, Anda harus memilih preferensi di menu Setelan Peta.