Personalizza le polilinee del percorso

Seleziona la piattaforma: Android iOS JavaScript

Puoi personalizzare le polilinee dei percorsi utilizzando il metodo ConsumerMapStyle.setPolylineStyleOptions. Se imposti opzioni di polilinea personalizzate, queste sostituiscono i valori predefiniti forniti dall'SDK Consumer.

Per ripristinare i valori predefiniti, chiama setPolylineStyleOptions con null per il parametro PolylineOptions.

Per recuperare l'PolylineOptions attivo, utilizza il metodo getPolylineStyleOptions.

Per saperne di più, vedi ConsumerMapStyle.setPolylineStyleOptions.

Tipi di polilinee del percorso

Puoi personalizzare i seguenti tipi di polilinee del percorso:

  • ACTIVE_ROUTE
  • REMAINING_ROUTE

ACTIVE_ROUTE e REMAINING_ROUTE vengono visualizzati durante il monitoraggio di un percorso e rappresentano il percorso del veicolo.

Proprietà della polilinea del percorso

Google Maps fornisce proprietà personalizzabili disponibili per ogni polilinea in PolylineOptions.

  • Per creare PolylineOptions, utilizza il relativo costruttore.

  • Per specificare proprietà personalizzate, utilizza i metodi di stile "Setter". Poiché il metodo fornisce valori predefiniti per ogni proprietà, devi solo specificare eventuali valori personalizzati.

  • Per disattivare la polilinea, imposta visible su false.

Per maggiori dettagli, consulta PolylineOptions nella documentazione per lo sviluppo Android.

Esempio

Java

// Initializing polyline style options.
consumerController
    .getConsumerMapStyle()
    .addOnSuccessListener(
        consumerMapStyle -> {
          consumerMapStyle.setPolylineStyleOptions(
              PolylineType.ACTIVE_ROUTE,
              new PolylineOptions()
                  .visible(false));
        });

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null);

Kotlin

// Initializing polyline options.
consumerController
  .getConsumerMapStyle()
  .addOnSuccessListener({ consumerMapStyle ->
    consumerMapStyle.setPolylineStyleOptions(
      PolylineType.ACTIVE_ROUTE,
      PolylineOptions().visible(false)
    )
  })

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null)

Percorso attivo e rimanente

Con la condivisione del percorso attivata, la tua app può personalizzare l'esperienza utente utilizzando le polilinee per mostrare il percorso attivo e rimanente del veicolo.

  • Il percorso attivo è il percorso che il veicolo sta percorrendo per raggiungere il waypoint successivo nella corsa attiva del consumatore.

  • Il percorso rimanente è il percorso che il veicolo deve ancora percorrere oltre il percorso attivo. Quando il waypoint del percorso attivo è l'ultimo waypoint del percorso, il percorso rimanente non esiste.

Puoi personalizzare e controllare la visibilità delle polilinee attive e rimanenti nella tua app. Per impostazione predefinita, il percorso attivo è visibile, mentre quello rimanente non lo è.

Esempio

Java

// Initializing polyline options.
consumerController
    .getConsumerMapStyle()
    .addOnSuccessListener(
        consumerMapStyle -> {
          consumerMapStyle.setPolylineStyleOptions(
              PolylineType.ACTIVE_ROUTE,
              new PolylineOptions()
                  .color(Color.BLUE));
          consumerMapStyle.setPolylineStyleOptions(
              PolylineType.REMAINING_ROUTE,
              new PolylineOptions()
                  .color(Color.BLACK)
                  .width(5)
                  .visible(true));
        });

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null);
consumerMapStyle.setPolylineStyleOptions(PolylineType.REMAINING_ROUTE, null);

Kotlin

// Initializing polyline options.
consumerController
  .getConsumerMapStyle()
  .addOnSuccessListener({ consumerMapStyle ->
    {
      consumerMapStyle.setPolylineStyleOptions(
        PolylineType.ACTIVE_ROUTE,
        PolylineOptions().color(Color.BLUE)
      )

      consumerMapStyle.setPolylineStyleOptions(
        PolylineType.REMAINING_ROUTE,
        PolylineOptions().color(Color.BLACK).width(5).visible(true)
      )
    }
  })

// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null)

consumerMapStyle.setPolylineStyleOptions(PolylineType.REMAINING_ROUTE, null)

Polilinee sensibili al traffico

Il livello del traffico della polilinea è disattivato per impostazione predefinita. Quando lo attivi, il renderer disegna segmenti sopra la polilinea del percorso che rappresentano tratti di traffico non normale. Include un offset che dipende dalle condizioni del traffico. Per saperne di più, consulta la documentazione per gli sviluppatori Android relativa a Polyline.

Google Maps rappresenta le condizioni del traffico come uno dei quattro tipi di velocità. Puoi personalizzare il colore per ogni tipo di velocità.

Per attivare le polilinee sensibili al traffico, crea un oggetto TrafficStyle e poi passalo a ConsumerMapStyle chiamando setPolylineTrafficStyle().

Esempio

Java

// TrafficStyle is part of the Consumer SDK.
int orange = Color.rgb(255, 165, 0);
TrafficStyle trafficStyle = TrafficStyle.builder()
  .setTrafficVisibility(true)
  .setTrafficColor(SpeedType.NO_DATA, Color.GREY)
  .setTrafficColor(SpeedType.NORMAL, Color.BLUE)
  .setTrafficColor(SpeedType.SLOW, orange)
  .setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
  .build();

consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle);

Kotlin

// TrafficStyle is part of the Consumer SDK.
val orange = Color.rgb(255, 165, 0)
val trafficStyle =
  TrafficStyle.builder()
    .setTrafficVisibility(true)
    .setTrafficColor(SpeedType.NO_DATA, Color.GRAY)
    .setTrafficColor(SpeedType.NORMAL, Color.BLUE)
    .setTrafficColor(SpeedType.SLOW, orange)
    .setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
    .build()

consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle)