如果一組行程符合以下條件,就可以進行排程轉乘 (又稱不離座轉乘):
- 屬於連續行程。
- 兩趟行程都使用同一輛車營運。
- 系統會使用大眾運輸動態饋給 trips.txt檔案中的同一個block_id值佈建行程。
必備條件
要讓 Google 地圖瞭解行程之間可以進行排程轉乘,就必須符合下列必備條件:
- 行程必須使用 trips.txt中的同一個block_id值,這代表行程使用同一輛車。
- 行程必須在相同日期營運。如果行程跨越午夜,則必須在連續日期營運。
- 行程必須連續且不重疊。
- 抵達行程的最後一個停靠站和出發行程的第一個停靠站必須相同 (建議) 或地點相近。
使用 block_id 啟用排程轉乘
不同路線上的連續行程之間可以進行排程轉乘。如果路線是環狀線,則可在同一條路線上進行排程轉乘。使用 block_id 欄位可指定哪些行程在同一排程中,以及何處適用不離座轉乘選項。
例 1:已排定行程支援的排程轉乘
在這個例子中,請考慮各個檔案中的下列值:
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 | 
在這個例子中:
- 如果使用者搜尋從 A 站到 E 站的路線,系統會引導該名使用者在 12:00 從 A 路線的 A 站上車,並於車輛在 RouteATrip1結束後抵達 C 站時留在車上,這是因為 B 路線的RouteBTrip1使用同一輛車。
- 如果 RouteATrip1的乘客想繼續搭到RouteBTrip1的某個停靠站,就可以留在車上轉乘。
- 對於這些路線上搭乘其他車輛進行其他行程的乘客,由於他們每趟行程搭乘的車輛都不同,因此不會看到這個選項。
例 2:以頻率為準並使用確切時間的行程支援的排程轉乘
除了必備條件中列出的要求外,以頻率為準的行程還必須符合下列其中一項條件,才能支援排程轉乘:
- 如果是環狀行程,則起點和終點必須是同一個停靠點。
- 在 frequencies.txt中,exact_times欄位的值必須為1。
下面的例子說明如何設定第二項條件的值:
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 | 
在這個例子中:
- 如果使用者搜尋從 stop1到stop5的路線,系統會引導該名使用者在 08:00 從route1的stop1上車,並於車輛在route1_trip1結束後抵達stop3時留在車上,這是因為route2的route2_trip1使用同一輛車。
- 如果 route1_trip1的乘客想繼續搭到route2_trip1的某個停靠點,就可以留在車上轉乘。
- 對於這些路線上搭乘其他車輛進行其他行程的乘客,由於他們每趟行程搭乘的車輛都不同,因此不會看到這個選項。
- 以 route1_trip1為例,headway_secs的值是start_time和end_time間隔的一半,代表共有兩趟行程。如要進一步瞭解如何使用headway_secs,請參閱 gtfs.org 上的 GTFS 時間表參考資料。
環狀線排程轉乘
環狀線行程的第一個和最後一個停靠點都相同,且具有相同的 stop_id。無論是以時間表或頻率為準的行程,都必須符合這項條件。
如果連續環狀行程具有相同的 block_id,系統就會啟用排程 (不離座) 轉乘,在車輛繼續行駛下一個循環時,讓第一趟行程的乘客留在車上。
GTFS 動態饋給中的有效排程
如要啟用排程轉乘,您必須在動態饋給中正確定義一或多個排程。如要通過驗證,屬於同一排程的行程不得重疊,且必須具有相同的 route_type (地鐵、鐵路、公車,以此類推)。不同行程可能屬於同一排程,即使是在不同日期也一樣。如果在 Static 動態饋給中定義任何排程,這些排程就會顯示在「總覽」分頁的「驗證報表」中。