يشرح هذا المستند كيفية تخصيص مظهر الخريطة وطريقة عرضها والتحكّم في خيارات عرض البيانات ونافذة العرض. يمكنك إجراء ذلك بإحدى الطريقتَين التاليتَين:
- استخدام تصميم الخرائط المستند إلى السحابة الإلكترونية
- ضبط خيارات نمط الخريطة مباشرةً في الرمز البرمجي الخاص بك
تصميم الخريطة باستخدام تصميم الخرائط المستند إلى السحابة الإلكترونية
لتطبيق نمط خريطة على خريطة مشاركة رحلة المستهلك في JavaScript، حدِّد ا
mapId و
أي
mapOptions
أخرى عند إنشاء JourneySharingMapView.
توضّح الأمثلة التالية كيفية تطبيق نمط خريطة باستخدام معرّف خريطة.
JavaScript
const mapView = new google.maps.journeySharing.JourneySharingMapView({
element: document.getElementById('map_canvas'),
locationProviders: [locationProvider],
mapOptions: {
mapId: 'YOUR_MAP_ID'
}
// Any other styling options.
});
TypeScript
const mapView = new google.maps.journeySharing.JourneySharingMapView({
element: document.getElementById('map_canvas'),
locationProviders: [locationProvider],
mapOptions: {
mapId: 'YOUR_MAP_ID'
}
// Any other styling options.
});
تصميم الخرائط مباشرةً في الرمز البرمجي الخاص بك
يمكنك أيضًا تخصيص تصميم الخريطة من خلال ضبط خيارات الخريطة عند إنشاء JourneySharingMapView. توضّح الأمثلة التالية كيفية تصميم خريطة باستخدام خيارات الخريطة. لمزيد من المعلومات حول خيارات الخريطة التي يمكنك ضبطها، اطّلِع على
mapOptions
في مرجع واجهة برمجة التطبيقات لـ Google Maps JavaScript.
JavaScript
const mapView = new google.maps.journeySharing.JourneySharingMapView({
element: document.getElementById('map_canvas'),
locationProviders: [locationProvider],
mapOptions: {
styles: [
{
"featureType": "road.arterial",
"elementType": "geometry",
"stylers": [
{ "color": "#CCFFFF" }
]
}
]
}
});
TypeScript
const mapView = new google.maps.journeySharing.JourneySharingMapView({
element: document.getElementById('map_canvas'),
locationProviders: [locationProvider],
mapOptions: {
styles: [
{
"featureType": "road.arterial",
"elementType": "geometry",
"stylers": [
{ "color": "#CCFFFF" }
]
}
]
}
});
عرض المعلومات على الخريطة
يمكنك عرض معلومات إضافية عن مركبة أو علامة الموقع الجغرافي باستخدام InfoWindow. لمزيد من المعلومات، اطّلِع على
InfoWindow.
يوضّح المثال التالي كيفية إنشاء InfoWindow وإرفاقه بعلامة مركبة:
JavaScript
// 1. Create an info window.
const infoWindow = new google.maps.InfoWindow(
{disableAutoPan: true});
locationProvider.addListener('update', e => {
const stopsCount = e.trip.remainingWaypoints.length;
infoWindow.setContent(
`Your vehicle is ${stopsCount} stops away.`);
// 2. Attach the info window to a vehicle marker.
// This property can return multiple markers.
const marker = mapView.vehicleMarkers[0];
infoWindow.open(mapView.map, marker);
});
// 3. Close the info window.
infoWindow.close();
TypeScript
// 1. Create an info window.
const infoWindow = new google.maps.InfoWindow(
{disableAutoPan: true});
locationProvider.addListener('update', (e: google.maps.journeySharing.FleetEngineTripLocationProviderUpdateEvent) => {
const stopsCount = e.trip.remainingWaypoints.length;
infoWindow.setContent(
`Your vehicle is ${stopsCount} stops away.`);
// 2. Attach the info window to a vehicle marker.
// This property can return multiple markers.
const marker = mapView.vehicleMarkers[0];
infoWindow.open(mapView.map, marker);
});
// 3. Close the info window.
infoWindow.close();
إيقاف ميزة "الملاءمة التلقائية"
يمكنك منع الخريطة من ملاءمة نافذة العرض تلقائيًا للمركبة والمسار المتوقّع من خلال إيقاف ميزة "الملاءمة التلقائية". يوضّح المثال التالي كيفية إيقاف ميزة "الملاءمة التلقائية" عند إعداد عرض خريطة مشاركة الرحلة.
JavaScript
const mapView = new
google.maps.journeySharing.JourneySharingMapView({
element: document.getElementById('map_canvas'),
locationProviders: [locationProvider],
automaticViewportMode:
google.maps.journeySharing
.AutomaticViewportMode.NONE,
...
});
TypeScript
const mapView = new
google.maps.journeySharing.JourneySharingMapView({
element: document.getElementById('map_canvas'),
locationProviders: [locationProvider],
automaticViewportMode:
google.maps.journeySharing
.AutomaticViewportMode.NONE,
...
});