Przeniesienie blokowe, zwane też przeniesieniem na siedzenie, jest dostępne, gdy zestaw podróży spełnia te warunki:
- Podróże są następujące po sobie.
- Oba przejazdy są realizowane tym samym pojazdem.
- Podróże są obsługiwane z tą samą wartością
block_id
w plikutrips.txt
w pliku danych o przejazdach.
Wymagania wstępne
Aby Mapy Google mogły rozpoznać, że przeniesienie bloku między przejazdami jest możliwe, muszą być spełnione te wymagania wstępne:
- Podróże muszą mieć tę samą wartość
block_id
w polutrips.txt
. Wskazuje to, że w przypadku tych przejazdów używany jest ten sam pojazd. - Podróże muszą odbywać się w tych samych dniach lub w dni następujących po sobie, jeśli podróż przekracza północ.
- Podróże muszą być kolejne i nie mogą się nakładać.
- Ostatni przystanek w przyjeździe i pierwszy przystanek w wyjeździe muszą być takie same (zalecane) lub fizycznie blisko siebie.
Aby włączyć przenoszenie bloków, użyj elementu block_id
Przejazdy blokowe mogą być realizowane między kolejnymi przejazdami na różnych trasach lub na tej samej trasie, jeśli jest to linia okrężna. W polu block_id
możesz określić, które przejazdy znajdują się w jednym bloku i gdzie dostępne są przesiadki na inne miejsca.
Przykład 1. Blokowanie przejazdów w ramach zaplanowanych podróży
W tym przykładzie weź pod uwagę te wartości w każdym pliku:
trips.txt
route_id |
trip_id |
block_id |
---|---|---|
RouteA |
RouteATrip1 |
Block1 |
RouteB |
RouteBTrip1 |
Block1 |
stop_times.txt
trip_id |
arrival_time |
departure_time |
stop_id |
stop_sequence |
---|---|---|---|---|
RouteATrip1 |
12:00:00 |
12:01:00 |
A |
1 |
RouteATrip1 |
12:05:00 |
12:06:00 |
B |
2 |
RouteATrip1 |
12:15:00 |
C |
3 |
|
RouteBTrip1 |
12:18:00 |
C |
1 |
|
RouteBTrip1 |
12:22:00 |
12:23:00 |
D |
2 |
RouteBTrip1 |
12:30:00 |
E |
3 |
W tym przykładzie:
- Użytkownik, który wyszukuje trasę z przystanku A do przystanku E, jest kierowany na przystanek A o godzinie 12:00 na trasie A i ma pozostać w pojeździe, gdy dotrze do przystanku C po zakończeniu
RouteATrip1
. Dzieje się tak, ponieważ te same usługiRouteBTrip1
są świadczone na trasie B. - Pasażerowie
RouteATrip1
, którzy chcą kontynuować podróż do przystanku na trasieRouteBTrip1
, mogą pozostać w pojeździe. - Pasażerowie innych przejazdów w innych pojazdach na tych samych trasach nie mają tej opcji, ponieważ korzystają z różnych pojazdów na każdą podróż.
Przykład 2. Zablokuj przesiadki w przypadku podróży opartych na częstotliwości z dokładnymi godzinami
Blokowanie przejazdów jest obsługiwane tylko w przypadku przejazdów o określonej częstotliwości, które spełniają co najmniej jeden z tych warunków (oprócz wymagań wymienionych w sekcji Warunki wstępne):
- Jeśli przejazd jest okrężny, musi zaczynać się i kończyć na tym samym przystanku.
- W pliku
frequencies.txt
wartość polaexact_times
musi wynosić1
.
W tym przykładzie pokazano, jak ustawić wartości dla drugiego warunku:
trips.txt
route_id |
trip_id |
block_id |
---|---|---|
route1 |
route1_trip1 |
block_2 |
route2 |
route2_trip1 |
block_2 |
stop_times.txt
trip_id |
arrival_time |
departure_time |
stop_id |
stop_sequence |
---|---|---|---|---|
route1_trip1 |
08:00:00 |
08:04:00 |
stop1 |
1 |
route1_trip1 |
08:10:00 |
08:14:00 |
stop2 |
2 |
route1_trip1 |
08:20:00 |
stop3 |
3 |
|
route2_trip1 |
08:24:00 |
stop3 |
1 |
|
route2_trip1 |
08:30:00 |
08:34:00 |
stop4 |
2 |
route2_trip1 |
08:40:00 |
08:44:00 |
stop5 |
3 |
frequencies.txt
trip_id |
start_time |
end_time |
headway_secs |
exact_times |
---|---|---|---|---|
route1_trip1 |
08:00:00 |
08:20:00 |
600 |
1 |
route2_trip1 |
08:24:00 |
08:44:00 |
600 |
1 |
W tym przykładzie:
- Użytkownik, który wyszukuje trasę z
stop1
dostop5
, jest kierowany dostop1
o godz. 8:00route1
. Użytkownik pozostaje w pojazdzie, gdy dociera dostop3
po zakończeniuroute1_trip1
. Dzieje się tak, ponieważ te same usługi pojazduroute2_trip1
w domenieroute2
. - Pasażerowie
route1_trip1
, którzy chcą kontynuować podróż do przystanku na trasieroute2_trip1
, mogą pozostać w pojeździe. - Pasażerowie innych przejazdów w innych pojazdach na tych samych trasach nie mają tej opcji, ponieważ w przypadku każdej podróży korzystają z innych pojazdów.
- Weźmy na przykład
route1_trip1
. Wartośćheadway_secs
jest połową przedziału międzystart_time
aend_time
. W tym przypadku oznacza to, że są 2 podróże. Więcej informacji o używaniu elementuheadway_secs
znajdziesz w pliku referencyjnym GTFS Schedule na stronie gtfs.org.
Blokowanie przenoszenia w linii pętli
Na linii okrężnej pierwszy i ostatni przystanek podróży są takie same i mają tę samą stop_id
. Jest to wymagane zarówno w przypadku podróży o określonej częstotliwości, jak i z ustalonym harmonogramem.
O ile kolejne pętle mają tę samą block_id
, blokowanie lub przesiadka na inne miejsce jest włączona, co pozwala pasażerom pierwszej podróży pozostać w pojazdzie, gdy kontynuuje on następną pętlę.
Prawidłowe bloki w plikach danych GTFS
Aby umożliwić przenoszenie bloków, musisz prawidłowo zdefiniować co najmniej 1 blok w pliku danych. Aby można było przejść weryfikację, przejazdy należące do tego samego bloku nie mogą się na siebie nakładać i muszą mieć ten sam route_type
(metro, pociąg, autobus itp.).
Podróże mogą należeć do tego samego bloku, nawet jeśli odbywają się w różnych dniach. Jeśli w pliku danych statycznych zdefiniowano jakieś bloki, będą one widoczne w raporcie weryfikacji na karcie Przegląd.