يتيح لك مخطّط 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". | "light" |
|
قيمة منطقية | لتفعيل المظهر الأحادي اللون، استخدِم true للحصول على نسخة رمادية من الخريطة. |
|
|
عنصر | بيانات عشوائية تتألف من مفتاح وقيمة ومضمّنة في تعريف النمط يمكنك استخدام هذا الحقل لتضمين محتوى غير مرتبط بالتصميم. لا يتم إرسال هذه البيانات إلى برامج الخرائط، مثل Maps JavaScript SDK. |
|
كائنات قواعد الأنماط
يصف هذا القسم السمات التي تحدّد عناصر قاعدة الأنماط في مصفوفة 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. |
|
عدد عائم | يمكنك تخصيص مستوى تعتيم المضلّع أو الخطوط المتعدّدة، حيث تشير القيمة 0 إلى الشفافية والقيمة 1 إلى التعتيم. |
|
سلسلة | يمكنك تخصيص لون المخطط باستخدام سلسلة سداسية عشرية من RGB. |
|
عدد عائم | تخصيص مستوى تعتيم المخطّط، حيث 0 يعني شفاف و1 يعني معتم |
|
عدد عائم | يمكنك تخصيص سُمك المخطط من نطاق يتراوح بين 0 و8. |
لمزيد من المعلومات، يُرجى الاطّلاع على المضلّعات والخطوط المتعددة.
label أدوات التنسيق
يسرد الجدول التالي جميع أدوات تصميم التصنيفات المتاحة.
| Styler | النوع | الوصف |
|---|---|---|
|
قيمة منطقية | لإخفاء تصنيف عنصر على الخريطة، اضبط القيمة على false. |
|
سلسلة | يمكنك تخصيص لون التصنيف النصي باستخدام سلسلة سداسية عشرية بنظام RGB. |
|
عدد عائم | يمكنك تخصيص معدّل شفافية التصنيف النصي، حيث تكون القيمة 0 شفافة والقيمة 1 معتمة. |
|
سلسلة | يمكنك تخصيص لون المخطط باستخدام سلسلة سداسية عشرية من RGB. |
|
عدد عائم | تخصيص مستوى تعتيم المخطّط، حيث 0 يعني شفاف و1 يعني معتم |
|
عدد عائم | يمكنك تخصيص سمك المخطط التفصيلي من نطاق يتراوح بين 0 و8. |
|
سلسلة | يمكنك تخصيص لون الدبوس باستخدام سلسلة سداسية عشرية من النموذج اللوني أحمر أخضر أزرق. |
|
سلسلة | يمكنك تخصيص لون الرمز داخل الدبوس باستخدام سلسلة سداسية عشرية بنظام RGB. |
|
سلسلة | يمكنك تخصيص لون الخط المحيطي للدبوس باستخدام سلسلة سداسية عشرية من نموذج أحمر أخضر أزرق. |
لمزيد من المعلومات، يُرجى الاطّلاع على الرموز والتصنيفات النصية.
مستويات التكبير الرئيسية
يمكنك ضبط نمط واحد لميزة ما لجميع مستويات التكبير الرئيسية أو تحديد أنماط مختلفة لمستويات التكبير الرئيسية المختلفة. إذا قدّمت نمطًا واحدًا فقط، سيتم استخدامه لجميع مستويات التكبير الرئيسية بدءًا من z0. إذا قدّمت أنماطًا لمستويات تكبير رئيسية مختلفة، سيتم تطبيق النمط من مستوى التكبير هذا حتى المستوى التالي الذي حدّدته.
لضبط مستوى التكبير الرئيسي لنمط، في سمة أداة التنسيق، حدِّد مستوى التكبير الرئيسي من z0 إلى z22 ثم تخصيص أداة التنسيق.
في المثال التالي، يكون لون الماء أسود من مستويات التكبير الرئيسية من 0 إلى 5، ورمادي داكن من مستويات التكبير الرئيسية من 6 إلى 11، ورمادي فاتح بدءًا من مستوى التكبير الرئيسي 12.
{
"id": "natural.water",
"geometry": {
"fillColor": {
"z0": "#000000",
"z6": "#666666",
"z12": "#cccccc"
}
}
}
لمزيد من المعلومات، يُرجى الاطّلاع على مستويات التكبير/التصغير في الأنماط.
القيود
يمكنك استخدام JSON لتصميم كل شيء تقريبًا في Google Cloud Console، باستثناء الخيارات التالية من قائمة إعدادات الخريطة:
- التحكّم في كثافة نقاط الاهتمام
- تغيير طريقة عرض المباني (بصمات مقابل ثلاثية الأبعاد)
- تغيير طريقة عرض المعالم (بين العرض التوضيحي والعادي)
تتطلّب خيارات الخريطة هذه إعادة جلب بيانات المربّعات من أجل عرضها بشكل صحيح، وهو ما قد يكون غير مرغوب فيه في بعض حالات الاستخدام.
بالنسبة إلى هذه الخيارات، عليك تحديد الإعدادات المفضّلة في قائمة إعدادات الخريطة.
ولأنّ هذه الخيارات غير مضمّنة في الأنماط التي يتم تصديرها، يجب إعادة اختيارها في Google Cloud Console عند استيراد نمط.