يعرض هذا القسم كيفية تخصيص المظهر المرئي لخرائط LocalContextMapView
من خلال تطبيق أنماط الخريطة المخصصة، ومن خلال تخصيص مظهر رموز محددات الخريطة.
تطبيق أنماط الخريطة المخصصة
يمكنك تخصيص المظهر المرئي لخرائط LocalContextMapView
من خلال تطبيق الأنماط المخصصة. ولكن لاحظ أن
LocalContextMapView
مزوّد بأنماط تلقائية مختلفة عن الأنماط العادية المستخدمة في Map
.
لإلغاء الأنماط الافتراضية البالغ عددها LocalContextMapView
تمامًا بالأنماط المخصصة (يحتفظ styles
بمصفوفة الأنماط المخصصة):
// Set the styles in map options.
localContextMapView.map.setOptions({
styles,
});
للاعتماد على LocalContextMapView
نمط تلقائي مع أنماط مخصصة
(styles
):
TypeScript
// Merge map styles. const mergedStyles = map.get("styles").concat(styles); map.setOptions({ center: center, zoom: 14, styles: mergedStyles, });
JavaScript
// Merge map styles. const mergedStyles = map.get("styles").concat(styles); map.setOptions({ center: center, zoom: 14, styles: mergedStyles, });
تخصيص رموز العلامات
يمكنك تعيين المظهر المرئي لرموز العلامات عن طريق تخصيص لون الدبوس ولون الشكل الرسومي والحجم (الحجم). افعل هذا عند إعداد LocalContextMapView
. يمكنك تعيين هذه القيم على كائن ثابت (لا تتغير أنماط الرموز مع الحالة) أو دالة ديناميكية (تتغير أنماط الرموز عند تحديد أو تحديد رمز.
- يتم دمج الأنماط المخصصة أعلى الأنماط الافتراضية.
- يتم دعم جميع تركيبات ألوان CSS، بما في ذلك نموذج أحمر أخضر أزرق (RGB)، وسداسي عشري، وHSL، وكلمة رئيسية ملونة.
- المقياس عبارة عن قيمة رقمية، بمقياس يبلغ 2 ضعفه بمقياس 1، وهكذا. بشكل افتراضي، يحتوي الدبوس على قيم تدرج مختلفة تم تعيينها للولايات المختلفة. المقياس مطلق، لذا لن تغيّر القيمة التي تمرّرها حجم الدبوس بالنسبة إلى القيمة الافتراضية، بل تتجاوز القيمة الافتراضية. على سبيل المثال، يؤدي ضبط المقياس على 1 لكل الولايات إلى ضبط الدبوس على الحجم نفسه بغض النظر عن الولاية.
تعيين لون ومقياس رمز العلامة بشكل ثابت
يمكنك تعيين اللون الافتراضي والحجم لرموز العلامات والرموز. للقيام بذلك،
حدّد قيم الألوان لـ glyphColor
وbackground
، وقيمة رقمية لـ
scale
في pinOptionsSetup
. في المثال التالي يتمّ تعيين الرموز إلى اللون الأسود،
والأحرف الرمزية إلى اللون الأبيض، ويزيد المقياس إلى 2:
const localContextMapView = new google.maps.localContext.LocalContextMapView({
element: document.querySelector('#map'),
placeTypePreferences: ['restaurant'],
maxPlaceCount: 12,
pinOptionsSetup: {glyphColor: '#FFF', background: '#000', scale: 2},
});
تعيين لون ورمز محدّد الموقع ديناميكيًا
لتعيين الألوان الافتراضية لرموز العلامات والأحرف الرسومية بناءً على الحالة (افتراضي أو
محدد أو محدد)، استخدم عبارة شرطية لتعيين القيم
المطلوبة لكل حالة. عندما يمرر المستخدم مؤشر الماوس فوق علامة، يصبح isHighlighted
true
. عندما ينقر المستخدم على علامة، تصبح isSelected
صحيحة. عند إغلاق عرض تفاصيل المكان، تعود رموز العلامات إلى النمط الافتراضي. يوضح المثال التالي تغيير نمط رمز العلامة بناءً على الحالة:
pinOptionsSetup: ({isSelected, isHighlighted}) => {
if (isHighlighted) {
return {glyphColor: 'white', background: '#990000', scale: 1.5};
}
if (isSelected) {
return {glyphColor: 'rgb(0, 128, 0)', background: 'pink', scale: 2};
}
},
استخدام نمط الخرائط المستندة إلى السحاب مع الإصدار التجريبي للسياق المحلي
لاستخدام نمط الخرائط المستندة إلى السحاب إلى جانب الإصدار التجريبي للسياق المحلي، اتبع الخطوات التالية:
- إنشاء
Map
باستخدامmapId
وتمريره إلىLocalContextMapView
- إيقاف التصنيفات والرموز لنقاط الاهتمام العامة (POIs).
- أوقف بعض العناصر في خيارات
Map
الداخلية. هذه الخطوات اختيارية.
إنشاء Map
باستخدام mapId
وتمريره إلى LocalContextMapView
لإضافة خريطة باستخدام رقم تعريف نمط الخرائط المستندة إلى السحاب، حدد العنصر map
(بما في ذلك رقم التعريف وجميع خيارات Map
الداخلية)، واستخدم هذا لإعداد LocalContextMapView
، كما هو موضح في المثال التالي:
function initMap() {
const mapWithId = new google.maps.Map(document.createElement('div'),
{center: {lat: 37.7749, lng: -122},
zoom: 10,
mapId: 'YOUR_MAP_ID_HERE'});
const localContextMapView = new google.maps.localContext.LocalContextMapView({
element: document.querySelector("#map"),
placeTypePreferences: ["restaurant", "bar"],
map: mapWithId,
maxPlaceCount: 12,
});
};
إيقاف التصنيفات والرموز لنقاط الاهتمام العامة
لإيقاف التصنيفات والرموز لنقاط الاهتمام العامة، اتبع الخطوات التالية:
- انتقل إلى Google Cloud Console، وحدد أنماط الخريطة لفتح شاشة "أنماط الخريطة".
- في تهيئة النمط لنقاط الاهتمام، عيّن مستوى الرؤية على إيقاف للتصنيفات والرموز.
- في تهيئة النمط لنقاط الاهتمام، عيّن مستوى الرؤية على تشغيل لتصنيفات المتنزهات.
تعيين خيارات Map
الداخلية (اختياري)
يمكنك أيضًا ضبط خيارات Map
الداخلية التالية، بالإضافة إلى أي خيارات داخلية أخرى في Map
تم ضبطها، كما هو موضَّح هنا:
localContextMapView.map.setOptions({
// ...
clickableIcons: false,
});