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

можно набросать последовательность остановок локально, построить маршрут, если он отличается от фактического, поставить точки via

Т.е. вместе с пропозалом должен быть приложен эталонный алгоритм для построения маршрута, чтобы все могли одинаково понимать что нужны точки via?

в идеале – да.

Да, всё верно.

Ну дык, “идеальный” пример в студию. :wink: Только чур не приводит примеры маршрутов проходящих по дорогам только для общественного транспорта. Предполагаю, что и для междугородних маршрутов надо будет очень постараться чтобы найти хороший пример.

Ещё раз: потребители бывают разные, с разными потребностями. И это не только пассажиры, которым нужно добраться из точки А в точку Б. Да, чтобы проложить маршрут с использованием ОТ, достаточно иметь точки остановок и расписание движения по ним. Но как раз расписания в OSM нет, а значит нормативы движения неизвестны (в отличии от того же GTFS). Для часто ходящих маршрутов его в какой-то мере можно заменить геометрией и средней скоростью движения автобуса.

Кроме того, есть системы мониторинга, которым линия нужна для того чтобы отслеживать прогресс движения вдоль маршрута и строить прогноз прибытия. Без геометрии это будет неработоспособно.

Ну и наконец наглядное представление маршрутов на карте, про что тут уже упоминали.

С учётом того, что маршрутным ТС разрешается отступать от правил ПДД при движении по установленному маршруту (в частности они могут игнорировать запрещающие знаки) - ошибок будет море.

Повторяюсь, примеры в студию. Ни разу на практике таких маршрутов не видел. Самое близкое это выделенка без параллельной полосы для обычного транспорта с соответствующими разрешающими знаками.

а как же bus = * ?

Ну вот например: http://transport.orgp.spb.ru/Portal/transport/stop/18367

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

А этот поворот запрещён для обычного транспорта: https://goo.gl/maps/MxZDXEex8So

Или вот, например: https://goo.gl/maps/M1SA2s5JeZn
Стоит знак “только прямо”. Однако смотрим вверх и видим троллейбусные провода, поворачивающие в нарушение этого знака. И троллейбусы постоянно туда поворачивают, по пути в парк/из парка. В основном это служебные рейсы, но один троллейбусный маршрут тоже там проходит: http://transport.orgp.spb.ru/Portal/transport/route/12276

И таких мест достаточно много.

Благодарю, хорошие примеры. Вижу два потенциальных решения (не считая стауса-кво):

  • Использовать except=bus в отношениях ограничений
  • Расширение via на линии, т.е. если в маршруте между остановками есть одна или несколько соединённых линий via, то маршрут строиться до начала этих линий и продолжается с их конца.

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

Это бессмысленно, т.к. его тогда надо фактически ко всем отношениям запретов добавлять. Вы ведь не знаете заранее где могут проложить новый маршрут? Проще тогда уж настроить специализированный роутер, который игнорирует запреты.

У нас в системе (управления и мониторинга за ОТ) как раз так и сделано - когда прокладывается новый маршрут, при добавлении очередной остановки линия перегона строится автоматом, прокладкой кратчайшего пути для psv|bus (service по умолчанию отключен, если только там не стоит явный psv|bus=yes, что бывает нужно для проездов на автобусных станциях, парках). И довольно часто этого не хватает, приходится корректировать линию, расставлять промежуточные точки, т.к. кратчайший маршрут оказывается неверным.

разве в этих случаях запрещающий/предписывающий знак не дополняется табличкой?

Эти дополнительные таблички не нужны: в ПДД явно указаны дорожные знаки, действие которых не распространяется на общественный транспорт (обычно в виде фразы “Действие знаков X.X.X-X.X.X не распространяется на маршрутные транспортные средства”).

P. S. Ещё пример до кучи - https://www.google.ru/maps/@59.9287715,30.4113022,3a,78.5y,62.76h,92.67t/data=!3m7!1e1!3m5!1sPOQCFMpevz_cXIWs0QhbdQ!2e0!6s%2F%2Fgeo1.ggpht.com%2Fcbk%3Fpanoid%3DPOQCFMpevz_cXIWs0QhbdQ%26output%3Dthumbnail%26cb_client%3Dmaps_sv.tactile.gps%26thumb%3D2%26w%3D203%26h%3D100%26yaw%3D161.44427%26pitch%3D0%26thumbfov%3D100!7i13312!8i6656 (знаки движения по полосам - “только прямо”, троллейбусные провода уходят налево).

Обьясните чем отличается редактор ID от джосма или поттача ?

неудобной работой с отношениями.
полач лучше просто не вспоминать…

  1. Правильно ли я понимаю, что никаких сетей общественного транспорта в России нет и все эти рандомные network=city/local/regional не имеют никакого смысла?
  2. Раз нет тегов для льготных тарифов, то стоит ли указывать полный как fee=yes + charge=XX RUB?
  3. Правильно ли обозначать маршруты с низкопольными автобусами как wheelchair=limited (т.к. неизвестно, все ли они низкопольные, да и заехать в них самостоятельно явно проблематично)?
  1. Да, но поделить на городские, пригородные и междугородние было бы полезно
  2. Тарифы это вообще не про схему движения
  3. Кроме автобуса, платформа так же должна быть подходящей. В общем это опять не про сам маршрут.

Для чего?

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

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

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

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

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

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

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

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

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

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

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