Zarządzaj punktami na trasie

Domyślnie pakiet SDK nawigacji na Androida znajduje najkrótszą trasę do punktu pośredniego, ale nie gwarantuje, że pojazd znajdzie się na danej trasie drogi, na którą czeka konsument, ani że kierowca może się na nim bezpiecznie zatrzymać. W tym przewodniku opisujemy 2 funkcje, których możesz użyć w takich sytuacjach:

  • Ustawienie wyznaczania tras na drodze
  • Funkcja przesiadki

Strona ustawienia kierowania trasy

Dzięki tej funkcji masz pewność, że pojazd znajduje się po właściwej stronie drogi. Tworząc punkt pośredni dla tego przystanku, ustawiasz opcję dotarcia do danej strony drogi. Preferencję możesz określić na jeden z dwóch sposobów: preferować tę samą stronę drogi lub podać kierunek przyjazdu.

Wolę tę samą stronę drogi

Podaj współrzędne geograficzne punktu na trasie, a potem ustawiasz flagę (setPreferSameSideOfRoad) wskazującą, że wolisz dotrzeć po tej samej stronie drogi co punkt pośredni – i znajduje się na najbliższym chodniku.

Waypoint waypoint =
   Waypoint.builder()
           .setLatLng(latitude, longitude)
           .setTitle("Somewhere in Sydney")
           .setPreferSameSideOfRoad(true)
           .build()

Ustaw nagłówek przyjazdu

Podaj współrzędne geograficzne punktu na drodze, a następnie podaj kierunek przyjazdu (setPreferredHeading) odpowiadający kierunkowi ruchu po tej samej stronie drogi co czekający konsument.

Waypoint waypoint =
   Waypoint.builder()
           .setLatLng(latitude, longitude)
           .setTitle("Somewhere in Sydney")
           .setPreferredHeading(preferredHeading)
           .build()

Pakiet SDK nawigacji wybiera segment drogi najbliżej punktu na trasie, którego kierunek pasa jest wyrównany (w zakresie +/- 55 stopni) do strony drogi, na której znajduje się punkt pośredni.

Ustaw preferencje przerwania

W niektórych miejscach kierowcy nie mają możliwości bezpiecznego zatrzymania się (np. na terenach podwyższonych, promach, w podziemiach i na innych obszarach o ograniczonym dostępie). Funkcja Stopover przenosi punkt pośredni do pobliskiego miejsca, jeśli lokalizacja nie jest odpowiednia do postoju pojazdu. Gdy ustawisz setVehicleStopover na true, punkt pośredni zostanie automatycznie przeniesiony podczas obliczania trasy, jeśli dostępna jest alternatywna lokalizacja.

Jak to działa

Ustawienie przystanków ustawia się podczas tworzenia punktu pośredniego dla tego przystanku. W tym celu określ preferencję setVehicleStopover, jak w tym przykładzie:

Waypoint waypoint =
   Waypoint.builder()
           .setLatLng(latitude, longitude)
           .setTitle("Somewhere in Sydney")
           .setVehicleStopover(true)
           .build()