Bulut tabanlı harita stilinin JSON şeması, haritaları stil düzenleyici arayüzü üzerinden özelleştirdiğiniz gibi JSON kullanarak özelleştirmenize olanak tanır. Bu belgede, JSON şeması ve JSON tarzı bildirimlerin nasıl yapılacağı açıklanmaktadır.
Stil düzenleyicide JSON kullanarak harita stilini nasıl düzenleyeceğinizi veya harita stilini nasıl içe ve dışa aktaracağınızı öğrenmek için Bulut tabanlı harita stiliyle JSON kullanma başlıklı makaleyi inceleyin.
Örnek JSON stil bildirimi
Aşağıdaki JSON stil bildirimi, arka plan rengini ayarlar ve ardından ilgi çekici yerler, parklar ve su özellikleri için stiller tanımlar. Ayrıca, yiyecek ve içecek konumlarının etiketlerini gizler.
{
"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 nesnesi
JSON stil bildirimi, üst düzey bir nesne ve stil kuralları dizisinden oluşur.
- Üst düzey özellikler (isteğe bağlı):
backgroundColorvevariantgibi genel stil ayarları. styles- Aşağıdakilerden oluşabilen bir stil kuralı nesneleri dizisi:id: Bu stil değişikliği için seçilecek harita özelliği (ör.pointOfInterest.recreation.park).geometry(isteğe bağlı) - Harita özelliğinin geometrik öğeleri ve uygulanacak stil kuralları (ör.fillColor).label(isteğe bağlı): Harita özelliğinin metin veya raptiye etiketi ve uygulanacak stil kuralları (ör.textStrokeColor).
Üst düzey mülkler
Aşağıdaki tablodaki özellikler harita stilinin tamamı için geçerlidir.
| Özellik | Tür | Açıklama | Örnek |
|---|---|---|---|
|
Dize | #RRGGBB onaltılık dizesini kullanarak harita uygulamasının arka plan rengini özelleştirin. Bu ayar, opaklık değişikliklerini desteklemez. | "#002211" |
|
"light"|"dark" | Açık veya koyu modu belirtin. Belirtilmezse varsayılan değer "light" olur. | "light" |
|
boole | Tek rengi etkinleştirmek için haritanın gri sürümünde true simgesini kullanın. |
|
|
nesne | Stil tanımına dahil edilen rastgele anahtar/değer verileri. Bu alanı, stil hakkında stil ile ilgili olmayan içerikleri eklemek için kullanabilirsiniz. Bu veriler, Maps JavaScript SDK gibi harita istemcilerine gönderilmez. |
|
Stil kuralı nesneleri
Bu bölümde, harita özelliklerini özelleştirmek için styles dizisindeki stil kuralı nesnelerini tanımlayan özellikler açıklanmaktadır. Her stil kuralı nesnesi aşağıdakilerden oluşmalıdır:
idmülk.- İlişkili stil özellikleri tanımlanmış
geometryveyalabelöğesi.
id (harita özelliği)
id özelliği, stil verilecek harita özelliğini belirtir. Özellik adları, stil düzenleyicideki harita özelliği adlarının camelcase versiyonlarıdır.
Harita özellikleri bir kategori ağacı oluşturur. pointOfInterest gibi bir üst özellik türü belirtirseniz üst için belirttiğiniz stiller, pointOfInterest.retail ve pointOfInterest.lodging gibi tüm alt öğeleri için geçerli olur.
Ayrıntılar için Harita özellik hiyerarşisi başlıklı makaleyi inceleyin.
Kullanılabilir id özelliklerinin listesi
Kullanılabilir id özellikleri şunlardır:
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
Öğeler
Öğeler, bir harita özelliğinin alt bölümleridir. Örneğin, bir yol haritadaki grafik çizgiden (geometry) ve adını belirten metinden (label) oluşur.
Aşağıdaki öğeler kullanılabilir ancak belirli bir harita özelliğinin bu öğelerin hiçbirini, bazılarını veya tümünü destekleyebileceğini unutmayın:
geometry: Belirtilen harita özelliğinin tüm geometrik öğelerini (ör. poligon, çoklu çizgi) seçer.label: Belirtilen harita özelliğinin tüm etiket öğelerini (ör. metin, raptiye) seçer.
Kıyafet bakım makineleri
Stil belirleyiciler, bir harita öğesinin her bir özelliği için stil kurallarınızı tanımlama şeklinizdir.
Örneğin, bir bina ayak izi için her öğeyi aşağıdaki gibi stilize edebilirsiniz:
Bir bina için örnek geometry stil belirleyiciler |
Bir bina için örnek label stil belirleyiciler |
|---|---|
| Bina alanı poligonunun haritada gizlenip gizlenmeyeceği veya gösterilip gösterilmeyeceği. | Bina etiketinin gizlenip gizlenmeyeceği. |
| Poligon dolgu rengi ve opaklığı. | Metin dolgu rengi ve opaklığı |
| Kenarlık rengi, şeffaflık ve genişlik | Metin kontur rengi ve opaklığı. |
Bu bölümde, geometry ve label öğeleri için kullanılabilen farklı stil seçenekleri açıklanmaktadır.
geometry şekillendiriciler
Aşağıdaki tabloda, kullanılabilen tüm geometrik stil oluşturucular listelenmiştir.
| Styler | Tür | Açıklama |
|---|---|---|
|
boole | Bir harita özelliğinin poligonunu veya çoklu çizgisini gizlemek için false olarak ayarlayın. |
|
dize | RGB onaltılık dizesiyle çokgenin veya çoklu çizginin rengini özelleştirin. |
|
kayan noktalı | Poligonun veya çoklu çizginin opaklığını özelleştirin. 0 şeffaf, 1 ise opaktır. |
|
dize | Ana hat rengini RGB onaltılık dizesiyle özelleştirin. |
|
kayan noktalı | Çizginin opaklığını özelleştirin. 0 şeffaf, 1 ise opaktır. |
|
kayan noktalı | Anahat kalınlığını 0 ile 8 arasında bir değerle özelleştirin. |
Daha fazla bilgi için Çokgenler ve Çoklu Çizgiler başlıklı makaleyi inceleyin.
label şekillendiriciler
Aşağıdaki tabloda, kullanılabilen tüm etiket stil araçları listelenmiştir.
| Styler | Tür | Açıklama |
|---|---|---|
|
boole | Bir harita özelliğinin etiketini gizlemek için false olarak ayarlayın. |
|
dize | Metin etiketinin rengini RGB onaltılık dizesiyle özelleştirin. |
|
kayan noktalı | Metin etiketinin opaklığını özelleştirin. 0 şeffaf, 1 ise opaktır. |
|
dize | Ana hat rengini RGB onaltılık dizesiyle özelleştirin. |
|
kayan noktalı | Çizginin opaklığını özelleştirin. 0 şeffaf, 1 ise opaktır. |
|
kayan noktalı | Anahat kalınlığını 0 ile 8 arasında bir değerle özelleştirin. |
|
dize | RGB onaltılık dizesiyle raptiye rengini özelleştirin. |
|
dize | Bir raptiyedeki glifin (simge) rengini RGB onaltılık dizesiyle özelleştirin. |
|
dize | Raptiye dış çizgisinin rengini RGB onaltılık dizesiyle özelleştirin. |
Daha fazla bilgi için Simgeler ve metin etiketleri başlıklı makaleyi inceleyin.
Keyzooms
Bir özellik için tüm keyzoom seviyelerinde tek bir stil belirleyebilir veya farklı keyzoom seviyeleri için farklı stiller belirtebilirsiniz. Yalnızca bir stil sağlarsanız bu stil, z0'dan başlayarak tüm yakınlaştırma düzeylerinde kullanılır. Farklı keyzoom yakınlaştırma seviyeleri için stil sağlarsanız stil, tanımladığınız bir sonraki düzeye kadar geçerli olur.
Bir stil için keyzoom düzeyi ayarlamak üzere stil belirleyici özelliğinde keyzoom düzeyini z0 ile z22 arasında tanımlayın ve ardından stil belirleyici özelleştirmesini yapın.
Aşağıdaki örnekte, suyun rengi 0-5 arasındaki ana yakınlaştırma seviyelerinde siyah, 6-11 arasındaki ana yakınlaştırma seviyelerinde koyu gri ve 12. ana yakınlaştırma seviyesinden itibaren açık gridir.
{
"id": "natural.water",
"geometry": {
"fillColor": {
"z0": "#000000",
"z6": "#666666",
"z12": "#cccccc"
}
}
}
Daha fazla bilgi için Stil yakınlaştırma düzeyleri başlıklı makaleyi inceleyin.
Sınırlamalar
Google Cloud Console'daki neredeyse her şeyi stilize etmek için JSON'u kullanabilirsiniz. Ancak Harita Ayarları menüsündeki aşağıdaki seçenekler hariçtir:
- Önemli yerlerin yoğunluğunu kontrol etme
- Binaların görünümünü (planlar ve 3D) değiştirme
- Önemli yerlerin gösterimini (resimli ve standart) değiştirme
Bu harita düzeyi seçeneklerin doğru şekilde oluşturulması için karo verilerinin yeniden getirilmesi gerekir. Bu durum, belirli kullanım alanları için istenmeyen bir durum olabilir.
Bu seçenekler için tercihinizi Harita Ayarları menüsünde belirlemeniz gerekir.
Bu seçenekler dışa aktarılan stillere dahil edilmediğinden, stil içe aktarılırken Google Cloud Console'da yeniden seçilmeleri gerekir.