مرجع نمطي لحزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" لنظام التشغيل Android

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

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

أمثلة

يحول بيان نمط 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 التالي ميزة باللون الأخضر الساطع، باستخدام قيمة النموذج اللوني أحمر أخضر أزرق:

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

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

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

يؤدي هذا المقتطف إلى إخفاء الميزة تمامًا:

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

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

  • hue (سلسلة سداسية عشرية لنموذج أحمر أخضر أزرق) #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 (سلسلة سداسية عشرية لنموذج أحمر أخضر أزرق) #RRGGBB) تحدد لون العنصر.
  • weight (قيمة عدد صحيح، أكبر من أو تساوي صفر) مجموعات وزن العنصر بالبكسل. قد يؤدي ضبط الوزن على قيمة عالية ينتج عنها اقتصاص بالقرب من حدود المربّعات.

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

ملاحظة: الترتيب مهم، لأن بعض العمليات ليست تبديلية. الميزات و/أو العناصر التي يتم تعديلها من خلال عمليات النمط (عادةً) وتضم أنماطًا حالية. تعمل العمليات على تلك الأنماط الحالية، إن وجدت.

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

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

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

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

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

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

عجلة ألوان تستند إلى نموذج أحمر أخضر أزرق

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

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