مثال انتقال بلوک

انتقال بلوکی که به آن انتقال درون صندلی نیز گفته می شود، زمانی در دسترس است که مجموعه ای از سفرها شرایط زیر را داشته باشند:

  1. سفرها متوالی است.
  2. یک وسیله نقلیه هر دو سفر را انجام می دهد.
  3. سفرها با همان مقدار block_id در فایل trips.txt در فید حمل و نقل ارائه می شوند.

پیش نیازها

برای اینکه Google Maps تشخیص دهد که انتقال بلوک بین سفرها امکان پذیر است، پیش نیازهای زیر باید رعایت شود:

  1. سفرها باید از همان مقدار block_id در trips.txt استفاده کنند. این نشان می دهد که در سفرها از یک وسیله نقلیه استفاده می شود.
  2. سفرها باید در همان روزها یا در روزهای متوالی اگر سفر از نیمه شب گذشته باشد، انجام شود.
  3. سفرها باید متوالی بوده و با هم تداخل نداشته باشند.
  4. آخرین توقف سفر ورودی و اولین توقف سفر خروجی یا باید یکسان باشد (توصیه می شود) یا از نظر فیزیکی نزدیک باشد.

از 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 می‌رسد، روی خودرو می‌ماند. این به این دلیل است که همان وسیله نقلیه RouteBTrip1 برای مسیر B ارائه می دهد.
  • مسافران 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 در مسیر stop1 در route1 هدایت می شود. پس از پایان route1_trip1 کاربر پس از رسیدن به stop3 روی خودرو می‌ماند. دلیلش این است که همان وسیله نقلیه route2_trip1 برای route2 خدمات می دهد.
  • مسافران route1_trip1 که می‌خواهند تا توقفی در route2_trip1 ادامه دهند، می‌توانند برای این انتقال در وسیله نقلیه بمانند.
  • مسافران سفرهای دیگر با وسایل نقلیه دیگر در همین مسیرها این گزینه را ندارند زیرا برای هر سفر از وسایل نقلیه متفاوتی استفاده می کنند.
  • برای مثال route1_trip1 در نظر بگیرید. مقدار headway_secs نصف فاصله بین start_time و end_time است. در این صورت یعنی دو سفر وجود دارد. برای کسب اطلاعات بیشتر در مورد استفاده از headway_secs ، به مرجع برنامه زمانی GTFS در gtfs.org مراجعه کنید.

انتقال بلوک در یک خط حلقه

در یک خط حلقه، اولین توقف و آخرین توقف یک سفر یکسان هستند و stop_id یکسان دارند. این هم برای سفرهای مبتنی بر برنامه و هم برای سفرهای فرکانس ضروری است.

مشروط بر اینکه سفرهای حلقه متوالی همان block_id داشته باشند، انتقال بلوک یا داخل صندلی فعال است، که به مسافران اولین سفر اجازه می‌دهد تا زمانی که خودرو در حلقه بعدی ادامه می‌دهد، روی خودرو بمانند.

بلوک های معتبر در فیدهای GTFS

برای اینکه امکان انتقال بلوک وجود داشته باشد، باید یک یا چند بلوک را به درستی در فید تعریف کنید. برای تأیید اعتبار، سفرهایی که متعلق به یک بلوک هستند نمی‌توانند همپوشانی داشته باشند و باید route_type یکسانی داشته باشند (مترو، ریل، اتوبوس و غیره). سفرها می توانند متعلق به یک بلوک باشند، حتی اگر در روزهای مختلف باشند. اگر بلوک‌هایی در یک فید ثابت تعریف شده باشند، در گزارش اعتبارسنجی، در برگه نمای کلی نشان داده می‌شوند.