עיצוב מפה

במאמר הזה מוסבר איך להתאים אישית את המראה והסגנון של מפה, ואיך לשלוט באפשרויות של חלון התצוגה ובחשיפה של הנתונים. אפשר לעשות זאת בדרכים הבאות:

  • שימוש בעיצוב מפות מבוסס-ענן
  • הגדרת אפשרויות של סגנון המפה ישירות בקוד שלכם

עיצוב המפה באמצעות עיצוב מפות מבוסס-ענן

כדי להחיל סגנון מפה על מפה לשיתוף נתוני נסיעה ב-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 במאמרי העזרה של ממשק ה-API של JavaScript במפות Google.

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" }
        ]
      }
    ]
  }
});

שליטה בהרשאות הגישה של נתוני המשימות ל-SDK

אתם יכולים לשלוט בחשיפה של אובייקטים מסוימים של משימות במפה באמצעות כללי חשיפה.

ברירת המחדל של הרשאות הגישה לנתוני המשימות

כברירת מחדל, הנתונים של משימות שמוקצות לרכב גלויים כשהרכב נמצא במרחק של עד 5 תחנות מהמשימה. הגישה מסתיימת כשהמשימה מסומנת כ'בוצעה' או מבוטלת.

בטבלה הזו מוצגת הגדרת ברירת המחדל של החשיפה לכל סוג משימה. אפשר לשנות את הרשאות הגישה של הרבה משימות, אבל לא של כולן. פרטים נוספים על סוגי משימות מופיעים במאמר סוגי משימות במדריך בנושא משימות מתוזמנות.

סוג המשימה ברירת המחדל של היכולת לראות אפשר להתאים אישית? תיאור
משימות שקשורות לזמינות לא גלוי לא התחנות האלה משמשות להפסקות של הנהגים ולתדלוק. אם מסלול למשימת משלוח כולל גם עצירה של רכב אחר, העצירה הזו לא מוצגת אם היא כוללת רק משימות של זמינות מוגבלת. זמן ההגעה המשוער וזמן השלמת המשימה המשוער עדיין מוצגים למשימת המסירה עצמה.
פתיחת משימות שקשורות לכלי רכב גלוי כן הגישה מסתיימת כשהמשימה מסתיימת או מבוטלת. אתם יכולים לשנות את הגדרות החשיפה של משימות פתוחות שקשורות לרכב. איך משנים את הרשאות הגישה של משימות פתוחות שקשורות לרכבים
משימות שקשורות לכלי רכב שהושלמו לא גלוי לא אי אפשר לשנות את הגדרות החשיפה של משימות שקשורות לרכבים שהוצאו משימוש.

התאמה אישית של הרשאות הגישה למשימות פתוחות שקשורות לרכב

ממשק TaskTrackingInfo מספק מספר אלמנטים של נתוני משימות שאפשר להציג באמצעות Consumer SDK.

רכיבי נתוני משימות שניתנים להתאמה אישית

קווים פוליגוניים של מסלולים

זמן ההגעה המשוער

הזמן המשוער להשלמת המשימה

מרחק הנהיגה שנותר עד למשימה

מספר התחנות שנותרו

מיקום הרכב

אפשרויות הרשאות גישה לכל משימה

כדי להתאים אישית את הגדרות החשיפה לכל משימה בנפרד, צריך להגדיר את TaskTrackingViewConfig כשיוצרים או מעדכנים משימה ב-Fleet Engine. כדי ליצור קריטריונים לקביעת הנראות של רכיב במשימה, משתמשים באפשרויות הנראות הבאות:

אפשרויות של הרשאות גישה

מספר התחנות שנותרו

משך הזמן עד שעת ההגעה המשוערת

מרחק הנסיעה שנותר

מוצג תמיד

לא גלוי אף פעם

לדוגמה, נניח שהתאמה אישית לדוגמה משנה את רמת החשיפה של שלושה רכיבי נתונים לפי הקריטריונים שמוצגים בטבלה הבאה. כל שאר הרכיבים פועלים לפי כללי החשיפה שמוגדרים כברירת מחדל.

רכיב הנתונים שרוצים לשנות חשיפה קריטריון
קו מרובה נקודות של מסלול הצגה הרכב נמצא במרחק של עד 3 תחנות.
זמן הגעה משוער הצגה המרחק שנותר לנסיעה קצר מ-5,000 מטרים.
מספר התחנות שנותרו אל תציג לעולם הרכב נמצא במרחק של עד 3 תחנות.

בדוגמה הבאה אפשר לראות את ההגדרה הזו:

"taskTrackingViewConfig": {
  "routePolylinePointsVisibility": {
    "remainingStopCountThreshold": 3
  },
  "estimatedArrivalTimeVisibility": {
    "remainingDrivingDistanceMetersThreshold": 5000
  },
  "remainingStopCountVisibility": {
    "never": true
  }
}

כללי חשיפה של קווים פוליגוניים של מסלולים ומיקום רכב

אי אפשר לראות קווים פוליגוניים של מסלולים אלא אם גם מיקום הרכב גלוי. אחרת, אפשר להסיק את מיקום הרכב לפי הקצה של קו פוליגוני.

ההנחיות האלה עוזרות לכם לספק שילוב תקין של אפשרויות לגבי קו פוליגוני של מסלול ומיקום הרכב.

אותן אפשרויות גישה קריטריון החשיפה הנחיות
האפשרות 'קווי מסלול' מוגדרת כ'מוצג תמיד'. מגדירים את מיקום הרכב כך שיוצג תמיד.
מיקום הרכב מוגדר למצב 'אף פעם לא גלוי'. הגדרת קווי מסלול כך שלא יוצגו אף פעם.
אפשרות החשיפה היא אחת מהאפשרויות הבאות:
  • מספר התחנות שנותרו
  • משך הזמן עד להגעה המשוערת
  • מרחק הנסיעה שנותר

מגדירים את האפשרויות של הקו הפוליגוני של המסלול לערך שקטן מהערך שהוגדר למיקום הרכב או שווה לו. לדוגמה:

    "taskTrackingViewConfig": {
      "routePolylinePointsVisibility": {
        "remainingStopCountThreshold": 3
      },
      "vehicleLocationVisibility": {
        "remainingStopCountThreshold": 5
      },
    }
    
אפשרויות שונות של הרשאת גישה קריטריונים לחשיפה הנחיות
מיקום הרכב גלוי

זה קורה רק אם שתי האפשרויות של מיקום הרכב והצגת קו פוליגון מתקיימות. לדוגמה:

  "taskTrackingViewConfig": {
    "routePolylinePointsVisibility": {
      "remainingStopCountThreshold": 3
    },
    "vehicleLocationVisibility": {
      "remainingDrivingDistanceMetersThreshold": 3000
    },
  }

בדוגמה הזו, מיקום הרכב גלוי רק אם מספר התחנות שנותרו הוא לפחות 3 וגם אם מרחק הנסיעה שנותר הוא לפחות 3,000 מטרים.

השבתת ההתאמה האוטומטית

כדי למנוע מהמפה להתאים אוטומטית את אזור התצוגה לרכב ולמסלול הצפוי, אפשר להשבית את ההתאמה האוטומטית. בדוגמה הבאה מוצג איך להשבית את ההתאמה האוטומטית כשמגדירים את תצוגת המפה של שיתוף המסלול.

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,
  ...
});

המאמרים הבאים