הסכימה של 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).
-
הגדרות ברמה העליונה
המאפיינים בטבלה הבאה חלים על כל סגנון המפה.
| נכס | סוג | תיאור | דוגמה |
|---|---|---|---|
|
מחרוזת | התאמה אישית של צבע הרקע של אפליקציית המפה באמצעות מחרוזת הקסדצימלית #RRGGBB. אי אפשר לשנות את השקיפות של ההגדרה הזו. | "#002211" |
|
"light"|"dark" | מציינים מצב בהיר או מצב כהה. אם לא מציינים ערך, ברירת המחדל היא 'בהיר'. | "light" |
|
בוליאני | כדי להפעיל את מצב השחור-לבן, משתמשים בtrue כדי להציג גרסה אפורה של המפה. |
|
אובייקטים של כללי סגנון
בקטע הזה מפורטים המאפיינים שמגדירים את אובייקטים של כללי סגנון במערך styles, כדי להתאים אישית תכונות של מפה. כל אובייקט של כלל סגנון חייב לכלול את הפרטים הבאים:
idנכס.-
geometryאוlabelעם מאפייני הסגנון המשויכים שמוגדרים.
id (רכיב במפה)
המאפיין id מציין את תכונת המפה שרוצים לעצב. שמות הנכסים הם גרסאות ב-camelcase של שמות התכונות במפה בכלי לעריכת הסגנון.
הרכיבים במפה יוצרים עץ קטגוריות. אם מציינים סוג תכונה של רכיב אב, כמו 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 מעצבים
בטבלה הבאה מפורטים כל סגנוני הצורות הגיאומטריות שזמינים.
| Styler | סוג | תיאור |
|---|---|---|
|
בוליאני | כדי להסתיר את הפוליגון או את הקו המקוטע של תכונה במפה, מגדירים את הערך false. |
|
מחרוזת | התאמה אישית של הצבע של המצולע או הקו המקוטע באמצעות מחרוזת הקסדצימלית של RGB. |
|
מספר ממשי (float) | אפשר להתאים אישית את האטימות של הפוליגון או הקו הפוליגוני, כאשר 0 הוא שקוף ו-1 הוא אטום. |
|
מחרוזת | התאמה אישית של צבע המתאר באמצעות מחרוזת הקסדצימלית של RGB. |
|
מספר ממשי (float) | התאמה אישית של האטימות של קווי המתאר, כאשר 0 הוא שקוף ו-1 הוא אטום. |
|
מספר ממשי (float) | אפשר להתאים אישית את עובי המתאר בטווח שבין 0 ל-8. |
מידע נוסף זמין במאמר בנושא מצולעים וקווי פוליגון.
label מעצבים
בטבלה הבאה מפורטים כל הסגנונות הזמינים של תוויות.
| Styler | סוג | תיאור |
|---|---|---|
|
בוליאני | כדי להסתיר את התווית של תכונה במפה, מגדירים את הערך false. |
|
מחרוזת | התאמה אישית של צבע תווית הטקסט באמצעות מחרוזת הקסדצימלית של RGB. |
|
מספר ממשי (float) | התאמה אישית של רמת השקיפות של תווית הטקסט, כאשר 0 הוא שקוף ו-1 הוא אטום. |
|
מחרוזת | התאמה אישית של צבע המתאר באמצעות מחרוזת הקסדצימלית של RGB. |
|
מספר ממשי (float) | התאמה אישית של האטימות של קווי המתאר, כאשר 0 הוא שקוף ו-1 הוא אטום. |
|
מספר ממשי (float) | אפשר להתאים אישית את עובי המתאר בטווח שבין 0 ל-8. |
|
מחרוזת | אפשר להתאים אישית את צבע הסיכה באמצעות מחרוזת הקסדצימלית של RGB. |
מידע נוסף זמין במאמר סמלים ותוויות טקסט.
רמות זום קובעות
אפשר להגדיר סגנון אחד לתכונה לכל רמות ההתקרבות למקשים, או לציין סגנונות שונים לרמות שונות של התקרבות למקשים. אם תספקו רק סגנון אחד, הוא ישמש לכל רמות ההתקרבות (zoom) החל מ-z0. אם מספקים סגנונות לרמות שונות של זום, הסגנון יחול מרמת הזום הזו עד לרמה הבאה שהוגדרה.
כדי להגדיר רמת זום מרכזית לסגנון, במאפיין styler, מגדירים את רמת הזום המרכזית מ-z0 עד z22 ואז את ההתאמה האישית של styler.
בדוגמה הבאה, צבע המים הוא שחור ברמות ההתקרבות 0 עד 5, אפור כהה ברמות ההתקרבות 6 עד 11 ואפור בהיר החל מרמת ההתקרבות 12.
{
"id": "natural.water",
"geometry": {
"fillColor": {
"z0": "#000000",
"z6": "#666666",
"z12": "#cccccc"
}
}
}
מידע נוסף זמין במאמר בנושא רמות זום של סגנונות.
מגבלות
אפשר להשתמש ב-JSON כדי לעצב כמעט כל דבר במסוף Google Cloud, חוץ מהתכונות הבאות בתפריט הגדרות המפה:
כדי להשתמש בתכונות האלה, צריך לבחור את ההעדפה בתפריט הגדרות המפה.