Menyesuaikan polyline rute

Pilih platform: Android iOS JavaScript

Anda menyesuaikan polyline rute menggunakan metode ConsumerMapStyle.setPolylineStyleOptions. Jika Anda menetapkan opsi polyline kustom, opsi ini akan menggantikan nilai default yang diberikan oleh Consumer SDK.

Untuk memulihkan nilai default, panggil setPolylineStyleOptions dengan null untuk parameter PolylineOptions.

Untuk mengambil PolylineOptions aktif, gunakan metode getPolylineStyleOptions.

Untuk mengetahui informasi selengkapnya, lihat ConsumerMapStyle.setPolylineStyleOptions.

Jenis polyline rute

Anda dapat menyesuaikan jenis polyline rute berikut:

  • ACTIVE_ROUTE
  • REMAINING_ROUTE

ACTIVE_ROUTE dan REMAINING_ROUTE ditampilkan saat mengikuti perjalanan dan mewakili rute kendaraan.

Properti polyline rute

Google Maps menyediakan properti yang dapat disesuaikan yang tersedia untuk setiap polyline di PolylineOptions.

  • Untuk mem-build PolylineOptions, gunakan konstruktornya.

  • Untuk menentukan properti yang disesuaikan, gunakan metode gaya 'penyetel'. Karena metode ini menyediakan nilai default untuk setiap properti, Anda hanya perlu menentukan nilai kustom.

  • Untuk menonaktifkan polyline, tetapkan visible ke false.

Untuk mengetahui detail selengkapnya, lihat PolylineOptions dalam dokumentasi developer Android.

Contoh

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)

Rute Aktif dan Tersisa

Dengan berbagi perjalanan diaktifkan, aplikasi Anda dapat menyesuaikan pengalaman pengguna menggunakan polyline untuk menampilkan rute aktif dan sisa untuk kendaraan Anda.

  • Rute aktif adalah jalur yang saat ini dilalui kendaraan untuk mencapai titik jalan berikutnya dalam perjalanan aktif konsumen.

  • Rute tersisa adalah jalur yang masih harus dilalui kendaraan melewati rute aktif. Jika titik jalan rute aktif adalah titik jalan perjalanan terakhir, rute yang tersisa tidak akan ada.

Anda dapat menyesuaikan dan mengontrol visibilitas polyline aktif dan yang tersisa di aplikasi. Secara default, rute aktif terlihat dan rute yang tersisa tidak terlihat.

Contoh

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)

Polyline yang mempertimbangkan lalu lintas

Lapisan traffic polyline dinonaktifkan secara default. Saat Anda mengaktifkannya, perender akan menggambar segmen di atas polyline rute yang mewakili peregangan lalu lintas non-normal. Ini mencakup offset yang bergantung pada kondisi lalu lintas. Lihat dokumentasi Developer Android tentang Polyline untuk mengetahui informasi selengkapnya.

Google Maps menampilkan kondisi lalu lintas sebagai salah satu dari empat jenis kecepatan. Anda dapat menyesuaikan warna untuk setiap jenis kecepatan.

Untuk mengaktifkan polyline yang mempertimbangkan traffic, buat objek TrafficStyle, lalu teruskan ke ConsumerMapStyle dengan memanggil setPolylineTrafficStyle().

Contoh

Java

// TrafficStyle is part of the Consumer SDK.
TrafficStyle trafficStyle = TrafficStyle.builder()
  .setTrafficVisibility(true)
  .setTrafficColor(SpeedType.NO_DATA, Color.GREY)
  .setTrafficColor(SpeedType.NORMAL_VALUE, Color.BLUE)
  .setTrafficColor(SpeedType.SLOW_VALUE, Color.ORANGE)
  .setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
  .build();

consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle);

Kotlin

// TrafficStyle is part of the Consumer SDK.
val trafficStyle =
  TrafficStyle.builder()
    .setTrafficVisibility(true)
    .setTrafficColor(SpeedType.NO_DATA, Color.GREY)
    .setTrafficColor(SpeedType.NORMAL_VALUE, Color.BLUE)
    .setTrafficColor(SpeedType.SLOW_VALUE, Color.ORANGE)
    .setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
    .build()

consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle)