Personnaliser les polylignes d'itinéraire

Ce document explique comment personnaliser les polylignes d'itinéraire pour la carte que vous utilisez dans votre application Web de suivi de parcours pour les clients et les opérateurs de flotte.

Le SDK Consumer vous permet de contrôler la visibilité de la polyligne d'itinéraire ou de définir son style pour l'itinéraire d'un trajet sur la carte. Le SDK crée un objet google.maps.Polyline pour chaque paire de coordonnées du trajet actif ou restant. La bibliothèque applique ensuite ces personnalisations dans deux situations :

  • avant d'ajouter les objets à la carte.
  • lorsque les données utilisées pour les objets ont changé ;

Appliquer un style aux polylignes d'itinéraire

Tout comme vous pouvez styliser les repères, vous pouvez styliser les polylignes d'itinéraire à l'aide de paramètres de personnalisation. À partir de là, vous configurez le style à l'aide de l'une des approches suivantes :

  • Le plus simple : utilisez PolylineOptions pour appliquer la règle à tous les objets Polyline correspondants lors de leur création ou de leur mise à jour.
  • Avancé : spécifiez une fonction de personnalisation. Les fonctions de personnalisation permettent de styliser individuellement les objets en fonction des données envoyées par Fleet Engine. La fonction peut modifier le style de chaque objet en fonction de l'état actuel du trajet. Par exemple, elle peut colorer l'objet Polyline dans une nuance plus foncée ou l'épaissir lorsque le véhicule se déplace plus lentement. Vous pouvez même joindre des sources extérieures à Fleet Engine et styliser l'objet Polyline en fonction de ces informations.

Paramètres de personnalisation

Lorsque vous appliquez un style aux polylignes d'itinéraire, vous utilisez les paramètres fournis dans FleetEngineShipmentLocationProviderOptions. Ces paramètres permettent de définir différents états de trajet dans le parcours du véhicule, comme suit :

Utiliser PolylineOptions

L'exemple suivant montre comment configurer le style d'un objet Polyline avec PolylineOptions. Suivez ce modèle pour personnaliser le style de n'importe quel objet Polyline à l'aide de l'une des personnalisations de polyligne listées précédemment.

JavaScript

activePolylineCustomization = {
  strokeWidth: 5,
  strokeColor: 'black',
};

TypeScript

activePolylineCustomization = {
  strokeWidth: 5,
  strokeColor: 'black',
};

Utiliser des fonctions de personnalisation pour styliser les polylignes d'itinéraire

L'exemple suivant montre comment configurer le style d'une polyligne d'itinéraire actif. Suivez ce modèle pour personnaliser le style de n'importe quel objet Polyline à l'aide de l'un des paramètres de personnalisation de polyligne d'itinéraire listés précédemment.

JavaScript

// Color the route polyline objects in green if the vehicle is nearby.
activePolylineCustomization =
  (params) => {
    const distance = params.taskTrackingInfo.remainingDrivingDistanceMeters;
    if (distance < 1000) {

      // params.polylines contains an ordered list of Polyline objects for
      // the path.
      for (const polylineObject of params.polylines) {
        polylineObject.setOptions({strokeColor: 'green'});
      }
    }
  };

TypeScript

// Color the route Polyline objects in green if the vehicle is nearby.
activePolylineCustomization =
  (params: ShipmentPolylineCustomizationFunctionParams) => {
    const distance = params.taskTrackingInfo.remainingDrivingDistanceMeters;
    if (distance < 1000) {

      // params.polylines contains an ordered list of Polyline objects for
      // the path.
      for (const polylineObject of params.polylines) {
        polylineObject.setOptions({strokeColor: 'green'});
      }
    }
  };

Contrôler la visibilité de la polyligne d'itinéraire

Par défaut, tous les objets Polyline sont visibles. Pour rendre un objet Polyline invisible, définissez sa propriété visible :

JavaScript

remainingPolylineCustomization = {visible: false};

TypeScript

remainingPolylineCustomization = {visible: false};