Neste documento, mostramos como personalizar polilinhas de trajeto para o mapa usado no seu app de acompanhamento de percurso baseado na Web para consumidores.
Com o SDK do Consumidor, é possível controlar a visibilidade da polilinha do trajeto ou definir o estilo dela para o trajeto de uma viagem no mapa. O SDK cria um objeto google.maps.Polyline para cada par de coordenadas no trajeto ativo ou restante da viagem. A biblioteca aplica essas personalizações em
duas situações:
- antes de adicionar os objetos ao mapa.
- quando os dados usados para os objetos mudarem.
Estilizar polilinhas de trajeto
Assim como você pode estilizar marcadores, é possível estilizar polilinhas de rota usando parâmetros de personalização. Em seguida, configure o estilo usando uma das seguintes abordagens:
- Mais simples: use
PolylineOptionspara aplicar a todos os objetosPolylinecorrespondentes quando eles forem criados ou atualizados. - Avançado: especifique uma função de personalização.
As funções de personalização permitem estilizar individualmente os objetos com base nos dados enviados pelo Fleet Engine. A função pode mudar o estilo de cada objeto com base no estado atual da jornada. Por exemplo, colorir o objeto
Polylinecom um tom mais escuro ou deixá-lo mais espesso quando o veículo estiver se movendo mais devagar. Você pode até mesmo mesclar fontes de fora do Fleet Engine e estilizar o objetoPolylinecom base nessas informações.
Parâmetros de personalização
Ao estilizar polilinhas de trajeto, use os parâmetros fornecidos em
FleetEngineTripLocationProviderOptions. Esses parâmetros fornecem diferentes estados de trajeto na jornada do veículo, da seguinte maneira:
- Caminhos já percorridos: use
takenPolylineCustomization. - Caminho percorrido ativamente: use
activePolylineCustomization. - Caminho ainda não percorrido: use
remainingPolylineCustomization.
Usar PolylineOptions
O exemplo a seguir mostra como configurar o estilo de um objeto Polyline
com PolylineOptions. Siga esse padrão para personalizar o estilo de qualquer objeto Polyline usando as personalizações de polilinha listadas anteriormente.
JavaScript
activePolylineCustomization = {
strokeWidth: 5,
strokeColor: 'black',
};
TypeScript
activePolylineCustomization = {
strokeWidth: 5,
strokeColor: 'black',
};
Usar funções de personalização para estilizar polilinhas de trajeto
O exemplo a seguir mostra como configurar o estilo de uma polilinha de trajeto ativo. Siga esse padrão para personalizar o estilo de qualquer objeto Polyline usando qualquer um dos parâmetros de personalização de polilinhas de trajeto listados anteriormente.
JavaScript
// Color the route polyline objects in green if the vehicle is nearby.
activePolylineCustomization =
(params) => {
const distance = params.trip.remainingWaypoints[0].distanceMeters;
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: TripPolylineCustomizationFunctionParams) => {
const distance = params.trip.remainingWaypoints[0].distanceMeters;
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'});
}
}
};
Controlar a visibilidade da polilinha do trajeto
Por padrão, todos os objetos do Polyline ficam visíveis. Para tornar um objeto Polyline invisível, defina a propriedade visible dele:
JavaScript
remainingPolylineCustomization = {visible: false};
TypeScript
remainingPolylineCustomization = {visible: false};