مرجع النمط لحزمة تطوير البرامج (SDK) للخرائط لنظام التشغيل iOS

اختَر النظام الأساسي: Android iOS JavaScript

باستخدام خيارات النمط، يمكنك تخصيص طريقة عرض أنماط خريطة Google العادية، وتغيير العرض المرئي للميزات، مثل الطرق والمتنزهات والأنشطة التجارية وغيرها من نقاط الاهتمام. بالإضافة إلى تغيير نمط هذه الميزات، يمكنك إخفاء الميزات بالكامل. وهذا يعني أنه يمكنك إبراز عناصر معيّنة من الخريطة أو جعل الخريطة مكمّلة لنمط الصفحة المحيطة.

أمثلة

يعمل إعلان نمط JSON التالي على تحويل جميع ميزات الخريطة إلى اللون الرمادي، ثم هندسة الطرق العرضية للألوان باللون الأزرق، وإخفاء التصنيفات الأفقية تمامًا:

[
  {
    "featureType": "all",
    "stylers": [
      { "color": "#C0C0C0" }
    ]
  },{
    "featureType": "road.arterial",
    "elementType": "geometry",
    "stylers": [
      { "color": "#CCFFFF" }
    ]
  },{
    "featureType": "landscape",
    "elementType": "labels",
    "stylers": [
      { "visibility": "off" }
    ]
  }
]

عنصر JSON

يتألف تعريف نمط JSON من العناصر التالية:

  • featureType (اختيارية) - الميزات التي يمكن اختيارها لتعديل النمط هذا. الخصائص هي خصائص جغرافية على الخريطة، بما في ذلك الطرق والمتنزهات والمسطحات المائية وغير ذلك. إذا لم تحدِّد ميزة، يتم اختيار جميع الميزات.
  • ElementType (اختيارية) - خاصية الميزة المحدّدة المراد اختيارها. العناصر هي أجزاء فرعية من إحدى الميزات، بما في ذلك التصنيفات وأشكال الهندسة. إذا لم تحدّد عنصرًا، سيتم اختيار جميع عناصر الميزة.
  • stylers - القواعد التي يجب تطبيقها على الميزات والعناصر المحدّدة. تشير الأنماط إلى لون الميزة وإذن دخولها ووزنها. يمكنك تطبيق نمط واحد أو أكثر على الميزة.

لتحديد نمط، يجب أن تجمع بين مجموعة أدوات اختيار featureType وelementType وstylers في مصفوفة أنماط. يمكنك استهداف أي مجموعة من الميزات في مصفوفة واحدة. ومع ذلك، يكون عدد الأنماط التي يمكنك تطبيقها في آن واحد محدودًا. إذا تجاوزت مصفوفة النمط الحد الأقصى لعدد الأحرف، لن يتم تطبيق أي نمط.

يتضمن الجزء المتبقي من هذه الصفحة مزيدًا من المعلومات حول الميزات والعناصر وأدوات التخصيص.

featureType

يختار مقتطف JSON التالي جميع الطرق على الخريطة:

{
  "featureType": "road"
}

الخصائص أو أنواع العناصر هي خصائص جغرافية على الخريطة، بما في ذلك الطرق والمتنزهات والمسطّحات المائية والأنشطة التجارية وغير ذلك.

وتشكّل الميزات شجرة فئات، مع إدراج all كجذر. إذا لم تحدِّد ميزة، يتم اختيار جميع الميزات. ويحدّد تحديد ميزة all التأثير نفسه.

تحتوي بعض الميزات على الميزات الفرعية التي تحدِّدها باستخدام رمز النقطة. على سبيل المثال، landscape.natural أو road.local. إذا حدّدت الميزة الرئيسية فقط، مثل road، ستسري الأنماط التي تحدّدها للعنصر الرئيسي على جميع عناصره الثانوية، مثل road.local وroad.highway.

يُرجى ملاحظة أن الميزات الرئيسية قد تتضمن بعض العناصر التي لم يتم تضمينها في جميع ميزاتها الفرعية.

تتوفّر الميزات التالية:

  • اختيار all (تلقائي) لكل الميزات.
  • administrative يختار كل المناطق الإدارية. لا يؤثر النمط إلا في تصنيفات المناطق الإدارية، وليس على الحدود الجغرافية أو التعبئة.
    • تم اختيار بلدان من قِبل administrative.country.
    • يختار administrative.land_parcel قطع أرض.
    • administrative.locality يختار المناطق المحلية.
    • administrative.neighborhood يختار الأحياء.
    • يختار administrative.province المقاطعات.
  • اختيار landscape لجميع المعالم.
    • يتم اختيار الميزات الصناعية، مثل المباني والهياكل الأخرى. landscape.man_made
    • يتم اختيار العناصر الطبيعية في landscape.natural، مثل الجبال والأنهار والصحاري والأنهار الجليدية.
    • يختار landscape.natural.landcover ميزات غطاء الأرض، وهي المادة المادية التي تغطي سطح الأرض، مثل الغابات والأراضي العشبية والأراضي الرطبة والأراضي المجرّدة.
    • يختار landscape.natural.terrain ميزات التضاريس لسطح الأرض، مثل الارتفاع والمنحدر والاتجاه.
  • اختيار poi لجميع نقاط الاهتمام.
    • يتم اختيار المعالم السياحية من قِبل poi.attraction.
    • poi.business يختار أنشطة تجارية.
    • يتم اختيار المباني الحكومية من قِبل poi.government.
    • تختار خدمة poi.medical خدمات الطوارئ، بما في ذلك المستشفيات والصيدليات والشرطة والأطباء وغيرها.
    • يتم اختيار المنتزهات من قِبل poi.park.
    • ويختار poi.place_of_worship أماكن العبادة، بما في ذلك الكنائس والمعابد والمساجد وغيرها.
    • يختار poi.school المؤسسات التعليمية.
    • يختار poi.sports_complex المجمّعات الرياضية.
  • road يختار كل الطرق.
    • road.arterial يحدد الطرق الرئيسية.
    • road.highway يختار الطرق السريعة.
    • تختار road.highway.controlled_access الطرق السريعة ذات إمكانية الوصول التي يتم التحكم فيها.
    • road.local يختار الطرق المحلية
  • transit تختار كل محطات وخطوط النقل العام.
    • transit.line يختار خطوط النقل العام.
    • تختار transit.station جميع محطات النقل العام.
    • يختار transit.station.airport المطارات.
    • يختار transit.station.bus محطات الحافلات.
    • يختار transit.station.rail محطات السكك الحديدية.
  • يختار water المياه.

elementType

يختار مقتطف JSON التالي التصنيفات لجميع الطرق المحلية:

{
  "featureType": "road.local",
  "elementType": "labels"
}

العناصر هي أقسام فرعية من ميزة. على سبيل المثال، يحتوي الطريق على خط تصوير (الشكل الهندسي) على الخريطة، ونص يشير إلى اسمه (تصنيف).

تتوفّر العناصر التالية، ولكن يُرجى العِلم أنّ ميزة معيّنة قد لا تتوافق مع أي من هذه العناصر أو بعضها أو جميعها:

  • اختيار all (تلقائي) لكل عناصر الميزة المحدّدة.
  • تختار geometry جميع العناصر الهندسية للعنصر المحدّد.
    • يختار geometry.fill تعبئة هندسة الميزة فقط.
    • يختار geometry.stroke ضغطة ميزة العنصر فقط.
  • يتم اختيار التصنيفات النصية المرتبطة بالميزة المحدّدة من قِبل labels.
    • يتم اختيار الرمز الذي يظهر ضمن تصنيف"الميزات"فقط في labels.icon.
    • لا تختار خدمة labels.text إلا نص التصنيف فقط.
    • تختار خدمة labels.text.fill فقط تعبئة التصنيف. ويتم عادةً عرض تعبئة التصنيف كمخطط ملوّن يحيط بنص التصنيف.
    • يختار labels.text.stroke ضغطة نص التصنيف فقط.

stylers

"أداة إنشاء الأنماط" هي خيارات تنسيق يمكنك تطبيقها على ميزات العناصر وخرائطها.

يعرض مقتطف JSON التالي ميزة باللون الأخضر الزاهي باستخدام قيمة RGB:

"stylers": [
  { "color": "#99FF33" }
]

يؤدي هذا المقتطف إلى إزالة كل الكثافة من لون الميزة، بغض النظر عن لون البداية. ويكون التأثير في عرض الميزة بتدرّج الرمادي:

"stylers": [
  { "saturation": -100 }
]

يخفي هذا المقتطف ميزة بالكامل:

    "stylers": [
      { "visibility": "off" }
    ]

تتوفّر خيارات النمط التالية:

  • تشير السمة hue (سلسلة سداسية عشرية بتنسيق RGB #RRGGBB) إلى اللون الأساسي.

    ملاحظة: يؤدي هذا الخيار إلى ضبط درجة اللون مع الحفاظ على تشبُّع الإضاءة والإضاءة محدّدَين في نمط Google التلقائي (أو في خيارات النمط الأخرى التي تحدّدها على الخريطة). يرتبط اللون الناتج بنمط الخريطة الأساسية. إذا أجرت Google أي تغييرات على نمط الخريطة الأساسية، ستؤثر هذه التغييرات في ميزات الخريطة الخاصة بك على نمط hue. من الأفضل استخدام نمط color المطلق، إن أمكن.

  • lightness (قيمة النقطة العائمة بين -100 و100) تشير إلى النسبة المئوية للتغيير في سطوع العنصر. تزيد القيم السلبية من الظلام (حيث تحدد -100 باللون الأسود) بينما تزيد القيم الإيجابية من السطوع (حيث يحدد +100 اللون الأبيض).

    ملاحظة: يضبط هذا الخيار الإضاءة مع الحفاظ على تشبُّع الألوان وألوانها في نمط Google التلقائي (أو في خيارات النمط الأخرى التي تحدِّدها على الخريطة). يرتبط اللون الناتج بنمط الخريطة الأساسية. إذا أجرت Google أي تغييرات على نمط الخريطة الأساسية، ستؤثر هذه التغييرات في ميزات الخريطة الخاصة بك على نمط lightness. من الأفضل استخدام نمط color المطلق، إن أمكن.

  • saturation (قيمة النقطة العائمة بين -100 و100) تشير إلى النسبة المئوية للتغيير في كثافة اللون الأساسي المطلوب تطبيقها على العنصر.

    ملاحظة: يحدّد هذا الخيار تشبُّع الألوان مع الحفاظ على درجات الألوان والإضاءة المحدّدة في نمط Google التلقائي (أو في خيارات التصميم الأخرى التي تحدّدها على الخريطة). يرتبط اللون الناتج بنمط الخريطة الأساسية. إذا أجرت Google أي تغييرات على نمط الخريطة الأساسية، ستؤثر هذه التغييرات في ميزات الخريطة الخاصة بك على نمط saturation. من الأفضل استخدام نمط color المطلق، إن أمكن.

  • gamma (قيمة النقطة العائمة بين 0.01 و10.0، حيث لا تُطبّق 1.0 أي تصحيح) تشير إلى مقدار تصحيح غاما لتطبيقه على العنصر. تصحّح تصحيحات غاما الإضاءة في طريقة عرض غير خطية، مع عدم التأثير في القيم البيضاء أو السوداء. يُستخدم تصحيح غاما عادةً لتعديل تباين العناصر المتعددة. على سبيل المثال، يمكنك تعديل الغاما لزيادة التباين أو خفضه بين الحواف والتصاميم الداخلية للعناصر.

    ملاحظة: يضبط هذا الخيار الإضاءة مقارنةً بنمط Google التلقائي، باستخدام منحنى غاما. إذا أجريت Google أي تغييرات على نمط الخريطة الأساسية، ستؤثر هذه التغييرات في ميزات الخريطة التي تم تصميمها باستخدام gamma. من الأفضل استخدام نمط color المطلق إذا أمكن.

  • invert_lightness (إذا true) يعمل على قلب الإضاءة الحالية. ويُعدّ هذا الأمر مفيدًا، مثلاً، التبديل بسرعة إلى خريطة داكنة بنص أبيض.

    ملاحظة: يؤدي هذا الخيار إلى عكس نمط Google التلقائي. إذا أجرت Google أي تغييرات على نمط الخريطة الأساسية، ستؤثر هذه التغييرات على ميزات الخريطة التي تم تصميمها باستخدام invert_lightness. من الأفضل استخدام نمط color المطلق، إن أمكن.

  • تشير السمة visibility (on أو off أو simplified) إلى ما إذا كان العنصر سيظهر على الخريطة أم لا وكيفية ظهوره. يؤدي مستوى الرؤية simplified إلى إزالة بعض ميزات النمط من الميزات المتأثرة، على سبيل المثال، يتم تبسيط الطرق إلى خطوط رفيعة بدون مخطط، بينما تفقد المتنزّهات نص التصنيف ولكن تحتفظ برمز التصنيف.
  • color (سلسلة التنسيق السداسي العشري بتنسيق RGB #RRGGBB) تضبط لون الميزة.
  • weight (قيمة عدد صحيح أكبر من أو تساوي صفر) تضبط وزن الميزة بالبكسل. وقد يؤدي ضبط الوزن على قيمة عالية إلى اقتصاصها بالقرب من حدود المربّعات.

يتم تطبيق قواعد النمط بالترتيب الذي تحدّده. ويجب عدم دمج عمليات متعدّدة في عملية واحدة. بدلاً من ذلك، يمكنك تحديد كل عملية على أنها إدخال منفصل في مصفوفة النمط.

ملاحظة: إنّ الطلب مهمّ، لأنّ بعض العمليات غير قابلة للتغيير. تحتوي العناصر و/أو العناصر التي يتم تعديلها من خلال عمليات النمط (عادةً) على أنماط حالية. وتعتمد الإجراءات على هذه الأنماط الحالية، إن وجدت.

نموذج الألوان والتشبّع والإضاءة

تستخدم الخرائط ذات التصميم نموذج التدرّج اللوني والتشبّع والإضاءة (HSL) للإشارة إلى اللون ضمن عمليات ضبط النمط. Hue يشير إلى اللون الأساسي، في حين يشير تشبّع اللون إلى كثافة هذا اللون، ويشير الإضاءة إلى الكمية النسبية من اللون الأبيض أو الأسود في اللون الأساسي.

تعمل تصحيح غاما على تعديل الإضاءة على مساحة اللون، بشكل عام لزيادة التباين أو تقليله. وبالإضافة إلى ذلك، يحدّد نموذج HSL اللون ضمن مساحة إحداثيات، حيث يشير hue إلى الاتجاه داخل عجلة الألوان، بينما يشير تشبّع اللون والإضاءة إلى سعة على محورَين مختلفَين. يتم قياس الألوان ضمن مساحة ألوان RGB، وهي تشبه معظم مساحات الألوان RGB، باستثناء أنّ ظلال اللونين الأبيض والأسود غير متوفّرة.

نموذج تدرج الألوان وتشبّع الألوان والإضاءة

في حين أنّ السمة hue تستخدم قيمة اللون السداسي العشري HTML، فإنها تستخدم هذه القيمة فقط لتحديد اللون الأساسي، أي اتجاهها حول عجلة الألوان، وليس تشبّعها أو خفتها، التي يُشار إليها بشكل منفصل كنسبة مئوية للتغير.

على سبيل المثال، يمكنك تحديد تدرج اللون الأخضر الخالص على أنه hue:0x00ff00 أو hue:0x000100. لونا اللونين متشابهان. وتشير كلتا القيمتين إلى اللون الأخضر الخالص في نموذج لون HSL.

عجلة الألوان RGB

لا تشير قيم RGB hue التي تتألف من أجزاء متساوية باللون الأحمر والأخضر والأزرق إلى تدرُّج اللون، لأنّ أيًا من هذه القيم لا تشير إلى اتجاه في مساحة إحداثيات HSL. على سبيل المثال: &&;;000000" (أسود) &&;;FFFFFF" (أبيض) وجميع الظلال الخالصة. للإشارة إلى اللون الأسود أو الأبيض أو الرمادي، يجب إزالة السمة saturation (ضبط القيمة على -100) وضبط السمة lightness بدلاً من ذلك.

بالإضافة إلى ذلك، عند تعديل الميزات الحالية التي تحتوي على نظام ألوان، لن يؤدي تغيير قيمة مثل hue إلى تغيير السمة الحالية saturation أو lightness.