Маршруты общественного транспорта

Для чего?

Но натягивать GTFS на OSM пока никто не собирается. Так может лучше так, чем никак?

Толку от подходящей платформы, если приедет ржавая Газель? Все этапы маршрута должны быть промаркированы.

Скорее есть.
city - маршруты, которые разработал и которыми управляет (указывает оператору параметры работы) город. Имеют единые тарифы, правила, требования к подвижному составу и т. д.
regional - аналогично, регион

И если мы находимся в городе, где проходят и маршруты сети city, и маршруты сети regional, то имеет смысл знать, к какой сети принадлежит данный маршрут.

Тут важно ещё учитывать то, что низкопольность - необходимое, но недостаточное условия для тегов wheelchair. Так как есть частые случаи, когда подвижной состав и инфраструктура пригодны для передвижения на коляске, но водители не опускают трап для заезда и/или не подъезжают близко к посадочной платформе. То есть автобусы 100% низкопольные, но wheelchair=no.

Поэтому, строго говоря, для низкопольности нужен отдельный тег, не wheelchair.

Это уже совсем бюрократические дебри. Из одного тега и координат эту информацию не извлечь, а для привязки к внешним источникам достаточно ref и operator.

В общем согласен. Но насколько частое это явление? Мне кажется, это скорее исключение, которое бы сопровождалось громким скандалом.

Я бы тут проводил аналогию с сетью заведений по франшизе. Точнее, в современных российских реалиях маршруты ОТ и работают по схеме, близкой к франшизе. И один и тот же оператор может работать по городским и региональным маршрутам, потребительские качества у них разные (хотя региональные могут частично дублировать городские). К примеру, на региональных может не действовать городской безлимитный тариф (даже в границах города).

То есть только тега operator недостаточно.

Частое. Отчасти причиной служат неудобные подъезды к остановочным площадкам - их делают в расширениях дороги (карманах). Заруливать туда требует времени и усилий (небольших, но много раз за смену водителя), поэтому нормальной ситуацией становится остановка автобуса не вплотную к остановочной площадке, а в метре-двух от неё - “кому надо ехать, подойдут”.

Так в том-то и дело, что завтра маршрут отдадут другому оператору и все его потребительские качества изменятся. Стоимость проезда - это атрибут маршрута, а то и конкретного рейса (“динамическое ценообразование”).

Не совсем так. На самом деле network - это сеть, которой принадлежит маршрут. Для сети устанавливаются общие правила движения и оплаты. В России администрированием сетей заняты, как я понимаю, муниципалитеты и органы государственной власти. Для каждой сети формируется реестр маршрутов, в рамках которого номер маршрута уникален, правила проезда, утверждается периодичность, количество машин и т.д. Также в сеть входят остановочные пункты. Их реестр с названиями, адресом и координатами тоже составляется администратором сети. Дальше, видимо, выбираются подрядчики, которые и осуществляют перевозки, а создатель сети выступает в качестве надзорного органа. Сеть эта имеет название. Что-нибудь вроде, “Единая сеть маршрутов регулярных пассажирских перевозок Свердловской области”, администрируемая Министерством транспорта Свердловской области, или "Сеть маршрутов регулярных перевозок МО “Город Екатеринбург”, администрируемая Администрацией Екатеринбурга. Ну или как-то так. Иногда это название даже на автобусах/трамваях/поездах пишут. Вот это название теоретически и должно быть указано в тэге “network”. Это важная информация, т.к. номер маршрута обычно уникален в пределах сети, а правила оплаты и прочее отличаются именно между сетями. Ну и потребитель знает кому жаловаться. Иначе буквально по одной улице может в легкую идти два 101-х автобуса. Один из одного города, другой из другого. И по карте их не различишь.
Тэг “operator” - это название подрядчика, который законтрактован осуществлять перевозки по маршруту. Тут есть сложность. Один оператор может работать на разных маршрутах и в разных сетях. И наоборот. На одном маршруте может быть несколько операторов. Через точку с запятой :wink:

Вообще говоря, льготы действовать или не действовать для разных операторов на одном маршруте. Не вижу смысла вообще об этом писать в картографическом сервисе. fee=yes по умолчанию, а тарифы могут весьма замысловатыми. Обычно, льготники ищут подходящие рейсы по названию сети и перевозчику.

Да. И остановки по назначению тоже. Это важно и для потребителя, и для рендеринга. Конечно рендеров ОТ осталось чуть больше нуля, но они распределяют масштаб, на котором надо отображать маршруты и остановки исходя из типа транспорта, а не назначения. Т.е. все автобусы считаются пригородными и на месте городов образуются кляксы. А дальние перевозки видны только, если приблизить. Трамваи и троллейбусы видны только на городском уровне, а поезда считаются дальнего следования. Это неверно. Масштаб для отображения должен определяться назначением маршрута. Но для этого нужен отдельный тэг. Я предлагал скопировать систему кодирования поездов в Германии и использовать тэг service. Но это как то не понравилось. И второй вопрос. Как определять назначение маршрута? По документам или по факту?

Теоретически - да. Но вы уверены, что это официальное название? И в каких документах его искать?

Какая-то она не очень продуманная. Мне кажется, это и на уровне рендера можно решить. Например, скрывая маршруты, которые полностью находятся внутри области с определённым admin_level

“Назначение” остановки можно вычислить по маршрутам, которые там останавливаются

Ну честно говоря, не уверен. Ибо разбираться в этих бюрократических дебрях лень. Но на междугородних автобусах такая наклейка была. Основной документ, по которому можно посмотреть структуру сети - это реестр маршрутов. Легко гуглится по запросу “Реестр маршрутов регулярных перевозок <название субъекта>”. За исключением ж/д. Там на сайте РЖД или их пригородных компаний искать надо. А так это видимо обязательный документ, который они публикуют на сайте. Но надо быть осторожным. Документ принимается и публикуется раз в год и может не соответствовать текущим изменениям. Они проходят под названием “Постановление <должность> о внесении изменений в схему маршрутов регулярных пассажирских перевозок <название субъекта> с <дата> в связи с <формальная причина> в соответствии с <какая-нибудь еще бумага>” $) Из его заголовка можно предположить, как власти свою сеть называют :slight_smile: Проблема в том, что название из заголовка абсолютно нечитаемое и правильнее всего переводить с русского бюрократического на русский обиходный. Ибо редкий пассажир дочитает до конца. Я прочитал только потому что картографированием увлекся, а, например, маме важно лишь екатеринбургский автобус (действует льготная Е-карта) или, скажем, березовский (не действует, но за деньги проехать удобнее, ибо ходит раз в 15 минут). Плюс поле для показа такого названия в приложении должно быть на полэкрана :slight_smile: Так что лучше наверное писать “Гортранспорт Екатеринбурга” (я написал длиннее, о чем жалею), а остальное в “network:official”. В англовики рекомендуется вообще вместо названий сетей аббревиатуры использовать. Но у нас они, кроме той же РЖД, никому ничего не скажут.
Но лучше бы этот вопрос уважаемый Сергей Астахов осветил. Он этой темой профессионально занимался

Она не плоха. Там основное возражение было, что тэг “service” и так перегружен по значению. Тут проблема в том, что
а) редкий рендер выполнит столь сложную и ресурсоемкую операцию
б) маршрут может покидать и возвращаться на территорию субъекта
в) назначение зависит от того, как маршрут используется, а не где проходит
г) есть специальные маршруты - высокоскоростные, школьные, фабричные, туристические и т.д.
Так что тэг лучше.

Та же проблема. Во-первых, расчетов еще больше. Во-вторых, формальные признаки могут давать неверный результат. Скажем, пригородный автобус 111 “Екатеринбург-Среднеуральск” останавливается на всех городских остановках. И на 50 % используется, как городской. Формально, им надо всем давать “пригородный” статус и карта вновь перегружена. Реально, на пригородный статус тянут только конечные и еще пара остановок, где основная посадка/высадка в связи с пересадкой на метро и по приезду в Верхнюю Пышму. А междугородные поезд или автобус дальнего следования могут тормозить у каждой Караболки (или на Разъездах №1 - 5) по пути из Екатеринбурга в Челябинск, где окромя знака даже скамейки нет. Понятно, что остановками уровня дальнего следования являются вокзалы и автовокзалы Екатеринбурга или Челябинска, которые являются хабами для межрегиональных перевозок. А остановка “Татарская Караболка (поворот)” - пригородная, ибо предназначена для транспортировки пассажиров в сельское поселение. Но отмечать ее на карте надо на меньшем масштабе, чем городскую. Ибо она одна на 20 км трассы.
Ну и опять же есть остановки спецтранспорта.

Расставить теги на каждом маршруте и каждой остановке - не менее сложная операция. Редкий мапер такое выполнит :slight_smile: Вычисления можно проводить один раз и использовать эту классификацию до следующего изменения.

Можно сравнить дистанцию внутри / за пределами субъекта

Но это же всё местные маршруты, которые вполне могут появляться на одном масштабе

Звучит логично. Даже если вы смотрите маршруты дальнего следования на небольшом зуме, то наверняка вас интересуют все остановки, на которых на них можно сесть. Если хочется упрощённую схему, то можно обозначить крупные ТПУ как public_transport=stop_area_group и скрыть прочие остановки, между которыми меньше X километров.

Создатели редактора iD решили, что просто ломать маршруты недостаточно и надо окончательно запутать и без того непростую схему тегирования. По их мнению, скамейка, урна и освещение - это теперь атрибуты павильона, а не остановки.
Во-вторых, платформы неприменно должны быть линией или полигоном. От этого у меня особенно пригорает, т.к. плагин pt_assistant до сих пор не умеет с ними работать. Такие отношения приходится упорядочивать вручную, а когда речь идёт о сотнях маршрутов и тысячах остановок - это реально больно. Вообще, с точки зрения роутинга и удобства работы с данными, от линий и полигонов больше вреда чем пользы. Так что убедительная просьба, не вестись на эти провокации и, по возможности, ограничиваться точками :slight_smile:

Так это же правильно, это свойства платформы, а не stop_position

Остановки в смысле public_transport=platform. А теперь они подсовывают эту форму на amenity=shelter + shelter_type=public_transport

На самом деле, это просто. Эта классификация маршрутов аналогична общепринятой у нас в стране настолько, что можно использовать официальный статус. Все ее знают. Отличие по маршрутам от официоза может быть в стиле “правда на земле”. Маршрут 71 официально городской, но соединяет Ебург с поселками и садами. Т.е., де-факто пригородный. Некоторая сложность может быть с остановками, но там тоже все интуитивно понятно. Уровень остановки определяется тем, для чего она преимущественно используется. При этом, если считать класс городских и поселковых маршрутов и остановок принятым по умолчанию, а их процентов 95 от введенных, то и ставить то ничего не надо :). Для всех прочих объектов ввести один тэг - это самое простое, что при формировании отношения маршрута, что при описании остановки. Для остановок это помогает делать плагин к JOSM.

Осталось понять, кто или что будет это считать. Собственно, сервисов, которые тупо выводят, то что введено людьми, осталось 2 - 3. А реализовать такой алгоритм непросто.

Согласен, за исключением высокоскоростных. Причем, я бы внес изменение в немецкую схему и для высокоскоростных сделал отдельный тэг, скажем highspeed=yes/no. Ибо в наше время они могут быть на разных уровнях. Например, “Сапсан” - это поезд дальнего следования, а “Ласточка” регионального. Ну и показывать их надо на более мелком масштабе, чем остальные маршруты того же класса, ибо пассажир наверняка предпочтет высокоскоростной транспорт обычному. В оригинале, как я понял, service=high_speed - это все-таки поезда дальнего следования, типа “Сапсана”.

Все - это вряд ли. Если я знаю, где я хочу сесть или выйти, я приближу эту местность. ну и плюс в идеале должны быть интерактивные сервисы, которые должны показать все остановки для выбранного маршрута и маршруты для остановки.

Отношение над отношениями с отношениями вместо тэга. Редкий мэпер такое осилит. Да и рендер тоже :slight_smile:

Вообще, я нечто подобное уже вводил для Екатеринбурга и окрестностей. Сейчас надо актуализировать. Реально было бы интересно поднять рендер и выяснить, стоит ли овчинка выделки. Но вот это реально сложно

Карту с остановками ищут, сужу по запросам из поисковика.
Да и нет никаких остановок между Москвой и Питером - http://frexosm.ru/railroad/validator/r8370381.html

Исходите из того, что в ОСМ вас только двое - вы и тот новичок, который всё ломает :slight_smile:
Расставьте теги в своём городе, поднимите рендер. Сложно, но не rocket science. Если не взлетит - всегда можно удалить…

Маршруты Москвы, подложка ОСМ https://t.mos.ru/transport/marshruty/magistral/map

У них старинная придурь.
Зеленоградским автобусам приписали к номерам спереди приставку “з-”
Это уже пытались ранее сделать на маршрутных указателей автобусов, но откатили. А тут дурость пока выжила.

О, какое бесполезное избыточное занятие, проходить по stop_position и проставлять вручную у них, что там останавливается, а что нет.
Эта же информация уже вытекает из того, в какие отношения маршрутов она включена. Включена в хотя бы один share_taxi, значит там share_taxi останавливается и share_taxi=yes.

И никакой потребности вручную это проставлять нет, так как уже вытекает из других имеющихся данных. Don’t repeat yourself.

По наблюдениям, на практике, пользователи забили на эти избыточные теги. И правильно.

Если говорить, об обсуждаемом инструменте, то там не надо ничего проходить. Достаточно галочку поставить промеж прочих свойств, типа названия, наличия скамейки и проч. С этой точки зрения, и указывать наличие скамеек и навесов в общем-то не обязательно
А виды транспорта необходимы по двум причинам:

  1. Обычно остановки заносятся на карту без привязки к маршрутам. Вчера ехал, увидел остановку, сегодня нанес на карту. Понятия не имею, какие маршруты там ходят. Но, согласитесь, информация, где остановка очень важная. Люди будут знать куда приедут/откуда уехать смогут.
  2. Рендеры в большинстве своем тупые и в сортах э-э-э маршрутов не разбираются. Им надо прямо указать, что на этом месте ждут автобус и троллейбус, а здесь трамвай. Причем в соответствии со старой и новой схемой. И даже с избытком (виды транспорта в свойствах платформы). Хуже не будет, а гарантии, что правильно отрисуют больше

Обратите внимание на новую попытку затащить GTFS в OSM :point_left:
Лично я бы это делал через промежуточный сервис, но хоть так…