مرجع JSON برای طراحی نقشه های مبتنی بر ابر

پلتفرم را انتخاب کنید: سرویس وب جاوا اسکریپت اندروید iOS

طرح JSON برای طراحی نقشه های مبتنی بر ابر به شما امکان می دهد از 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 ).

تنظیمات سطح بالا

ویژگی های جدول زیر برای کل سبک نقشه اعمال می شود.

اموال تایپ کنید توضیحات مثال

backgroundColor

رشته رنگ پس‌زمینه برنامه نقشه را با استفاده از یک رشته هگز #RRGGBB سفارشی کنید. این تنظیم از تغییرات شفافیت پشتیبانی نمی کند. "#002211"

variant

"روشن"|"تاریک" حالت روشن یا تاریک را مشخص کنید. اگر مشخص نشده باشد، پیش‌فرض «نور» است. "نور"

monochrome

بولی برای فعال کردن تک رنگ، از true برای نسخه خاکستری نقشه استفاده کنید.

true

اشیاء قانون سبک

این بخش خصوصیاتی را شرح می دهد که اشیاء قانون سبک را در آرایه styles برای سفارشی کردن ویژگی های نقشه تعریف می کنند. هر شی قانون سبک باید شامل موارد زیر باشد:

  • دارایی id
  • geometry یا عنصر label با ویژگی های استایلر مرتبط تعریف شده است.

id (ویژگی نقشه)

ویژگی id ویژگی نقشه را برای استایل مشخص می کند. نام‌های دارایی نسخه‌های شتری از نام ویژگی‌های نقشه در ویرایشگر سبک هستند.

ویژگی های نقشه یک درخت دسته بندی را تشکیل می دهند. اگر یک نوع ویژگی والد را مشخص کنید، مانند pointOfInterest ، سبک‌هایی که برای والدین مشخص می‌کنید برای همه فرزندانش اعمال می‌شود، مانند pointOfInterest.retail و pointOfInterest.lodging . برای جزئیات، به سلسله مراتب ویژگی نقشه مراجعه کنید.

لیست ویژگی های id موجود

ویژگی های id موجود به شرح زیر است:

  • pointOfInterest
  • pointOfInterest.emergency
  • pointOfInterest.emergency.fire
  • pointOfInterest.emergency.hospital
  • pointOfInterest.emergency.pharmacy
  • pointOfInterest.emergency.police
  • pointOfInterest.entertainment
  • pointOfInterest.entertainment.arts
  • pointOfInterest.entertainment.casino
  • pointOfInterest.entertainment.cinema
  • pointOfInterest.entertainment.historic
  • pointOfInterest.entertainment.museum
  • pointOfInterest.entertainment.themePark
  • pointOfInterest.entertainment.touristAttraction
  • pointOfInterest.foodAndDrink
  • pointOfInterest.foodAndDrink.bar
  • pointOfInterest.foodAndDrink.cafe
  • pointOfInterest.foodAndDrink.restaurant
  • pointOfInterest.foodAndDrink.winery
  • pointOfInterest.landmark
  • pointOfInterest.lodging
  • pointOfInterest.recreation
  • pointOfInterest.recreation.beach
  • pointOfInterest.recreation.boating
  • pointOfInterest.recreation.fishing
  • pointOfInterest.recreation.golfCourse
  • pointOfInterest.recreation.hotSpring
  • pointOfInterest.recreation.natureReserve
  • pointOfInterest.recreation.park
  • pointOfInterest.recreation.peak
  • pointOfInterest.recreation.sportsComplex
  • pointOfInterest.recreation.sportsField
  • pointOfInterest.recreation.trailhead
  • pointOfInterest.recreation.zoo
  • pointOfInterest.retail
  • pointOfInterest.retail.grocery
  • pointOfInterest.retail.shopping
  • pointOfInterest.service
  • pointOfInterest.service.atm
  • pointOfInterest.service.bank
  • pointOfInterest.service.carRental
  • pointOfInterest.service.evCharging
  • pointOfInterest.service.gasStation
  • pointOfInterest.service.parkingLot
  • pointOfInterest.service.postOffice
  • pointOfInterest.service.restStop
  • pointOfInterest.service.restroom
  • pointOfInterest.transit
  • pointOfInterest.transit.airport
  • pointOfInterest.other
  • pointOfInterest.other.bridge
  • pointOfInterest.other.cemetery
  • pointOfInterest.other.government
  • pointOfInterest.other.library
  • pointOfInterest.other.military
  • pointOfInterest.other.placeOfWorship
  • pointOfInterest.other.school
  • pointOfInterest.other.townSquare
  • political
  • political.countryOrRegion
  • political.border
  • political.reservation
  • political.stateOrProvince
  • political.city
  • political.sublocality
  • political.neighborhood
  • political.landParcel
  • infrastructure
  • infrastructure.building
  • infrastructure.building.commercial
  • infrastructure.businessCorridor
  • infrastructure.roadNetwork
  • infrastructure.roadNetwork.noTraffic
  • infrastructure.roadNetwork.noTraffic.pedestrianMall
  • infrastructure.roadNetwork.noTraffic.trail
  • infrastructure.roadNetwork.noTraffic.trail.paved
  • infrastructure.roadNetwork.noTraffic.trail.unpaved
  • infrastructure.roadNetwork.parkingAisle
  • infrastructure.roadNetwork.ramp
  • infrastructure.roadNetwork.road
  • infrastructure.roadNetwork.road.arterial
  • infrastructure.roadNetwork.road.highway
  • infrastructure.roadNetwork.road.local
  • infrastructure.roadNetwork.road.noOutlet
  • infrastructure.roadNetwork.roadShield
  • infrastructure.roadNetwork.roadSign
  • infrastructure.roadNetwork.roadDetail
  • infrastructure.roadNetwork.roadDetail.surface
  • infrastructure.roadNetwork.roadDetail.crosswalk
  • infrastructure.roadNetwork.roadDetail.sidewalk
  • infrastructure.roadNetwork.roadDetail.intersection
  • infrastructure.railwayTrack
  • infrastructure.railwayTrack.commercial
  • infrastructure.railwayTrack.commuter
  • infrastructure.transitStation
  • infrastructure.transitStation.bicycleShare
  • infrastructure.transitStation.busStation
  • infrastructure.transitStation.ferryTerminal
  • infrastructure.transitStation.funicularStation
  • infrastructure.transitStation.gondolaStation
  • infrastructure.transitStation.monorail
  • infrastructure.transitStation.railStation
  • infrastructure.transitStation.railStation.subwayStation
  • infrastructure.transitStation.railStation.tramStation
  • infrastructure.urbanArea
  • natural
  • natural.continent
  • natural.archipelago
  • natural.island
  • natural.land
  • natural.land.landCover
  • natural.land.landCover.crops
  • natural.land.landCover.dryCrops
  • natural.land.landCover.forest
  • natural.land.landCover.ice
  • natural.land.landCover.sand
  • natural.land.landCover.shrub
  • natural.land.landCover.tundra
  • natural.water
  • natural.water.ocean
  • natural.water.lake
  • natural.water.river
  • natural.water.other
  • natural.base

عناصر

عناصر زیربخش های یک ویژگی نقشه هستند. به عنوان مثال، یک جاده از خط گرافیکی ( geometry ) روی نقشه و همچنین متنی که نام آن را نشان می دهد ( label ) تشکیل شده است.

عناصر زیر در دسترس هستند، اما توجه داشته باشید که یک ویژگی نقشه خاص ممکن است از هیچ یک، برخی یا همه عناصر پشتیبانی نکند:

  • geometry : تمام عناصر هندسی (به عنوان مثال، چند ضلعی، چند خط) ویژگی نقشه مشخص شده را انتخاب می کند.
  • label : تمام عناصر برچسب (مثلا متن، پین) ویژگی نقشه مشخص شده را انتخاب می کند.

استایلرها

استایلرها نحوه تعریف قوانین سبک خود برای هر عنصر از ویژگی نقشه هستند.

به عنوان مثال، برای یک ردپای ساختمان می توانید هر عنصر را به صورت زیر استایل کنید:

نمونه ای از استایلرهای geometry برای یک ساختمان نمونه ای از استایلرهای label برای یک ساختمان
اینکه چند ضلعی ردپای ساختمان را پنهان کنید یا روی نقشه نشان دهید. آیا برای پنهان کردن یا نشان دادن برچسب ساختمان.
رنگ پر کردن چند ضلعی و کدورت. رنگ پر کردن متن و کدورت.
رنگ حاشیه، تیرگی و عرض. رنگ و تیرگی خط متن.

این بخش گزینه های مختلف سبک موجود برای عناصر geometry و label را شرح می دهد.

استایلرهای geometry

جدول زیر تمام استایلرهای هندسی موجود را فهرست می کند.

استایلر تایپ کنید توضیحات

visible

بولی برای پنهان کردن چند ضلعی یا چند خطی یک ویژگی نقشه، روی false تنظیم کنید.

fillColor

رشته رنگ چند ضلعی یا چند خطی را با یک رشته شش گوش RGB سفارشی کنید.

fillOpacity

شناور کدورت چند ضلعی یا چند خطی را سفارشی کنید، جایی که 0 شفاف و 1 مات است.

strokeColor

رشته رنگ طرح کلی را با یک رشته شش گوش RGB سفارشی کنید.

strokeOpacity

شناور کدورت طرح کلی را سفارشی کنید، جایی که 0 شفاف و 1 مات است.

strokeWeight

شناور ضخامت طرح کلی را از محدوده 0 تا 8 سفارشی کنید.

برای اطلاعات بیشتر، به Polygons and Polylines مراجعه کنید.

استایلرهای label

جدول زیر تمام استایلرهای برچسب موجود را فهرست می کند.

استایلر تایپ کنید توضیحات

visible

بولی برای پنهان کردن برچسب یک ویژگی نقشه، روی false تنظیم کنید.

textFillColor

رشته رنگ برچسب متن را با یک رشته هگز RGB سفارشی کنید.

textFillOpacity

شناور کدورت برچسب متن را سفارشی کنید، جایی که 0 شفاف و 1 مات است.

textStrokeColor

رشته رنگ طرح کلی را با یک رشته شش گوش RGB سفارشی کنید.

textStrokeOpacity

شناور کدورت طرح کلی را سفارشی کنید، جایی که 0 شفاف و 1 مات است.

textStrokeWeight

شناور ضخامت طرح کلی را از محدوده 0 تا 8 سفارشی کنید.

pinFillColor

رشته رنگ پین را با یک رشته شش گوش RGB سفارشی کنید.

برای اطلاعات بیشتر، نمادها و برچسب‌های نوشتاری را ببینید.

کلید زوم ها

شما می توانید یک سبک واحد را برای یک ویژگی برای تمام سطوح بزرگنمایی کلید تنظیم کنید یا سبک های مختلف را برای سطوح مختلف بزرگنمایی کلید مشخص کنید. اگر فقط یک سبک ارائه دهید، برای تمام سطوح بزرگنمایی کلید از z0 استفاده می شود. اگر سبک هایی را برای سطوح مختلف کلید زوم ارائه کنید، این سبک از آن سطح بزرگنمایی تا سطح بعدی که تعریف کرده اید اعمال می شود.

برای تنظیم سطح کلید زوم برای یک استایل، در ویژگی styler، سطح keyzoom را از z0 تا z22 و سپس سفارشی سازی styler را تعریف کنید.

در مثال زیر، رنگ آب سیاه از سطوح کلید زوم 0-5، خاکستری تیره از سطوح کلید زوم 6-11، و خاکستری روشن از سطح کیزوم 12 شروع می شود.

{
  "id": "natural.water",
  "geometry": {
    "fillColor": {
      "z0": "#000000",
      "z6": "#666666",
      "z12": "#cccccc"
    }
  }
}

برای اطلاعات بیشتر، سطوح بزرگنمایی سبک را ببینید.