You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#451 2010-11-23 18:52:37

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

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

Вот так выглядит этот маршрут. Даже если рассматривать его как два направления, они будут между собой пересекаться в точке перехода кольца в линию. И никакого смысла сливать их в одну линию разделяя всё остальное нет - никто так не должен ехать, и навигатор не должен так предлагать. Не надо придумывать нелепые причины для объединения направлений в одно.
721.png

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

Маршрут, который я нарисовал выше, не делится на изолированные направления. Однако он, тем не менее, делится на два пересекающихся направления. Если бы адепты деления были последовательны, они бы его так бы и делили.

Offline

#452 2010-11-23 20:06:41

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

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

Ну, не любой маршрут делится на два направления, конечно.
И при чём здесть «изолированные направления»? Могут быть одни и те же веи в нескольких направлениях. В схеме по этому поводу ничего не указывается.
Точка-разделитель — ещё одна сущность, назначение которой не очень понятно.
Ты нарисовал линии, теперь по каждой линии, как я понимаю, можно нарисовать отношения с упорядоченными остановками — и всё будет ок. Я не очень понимаю фразу про «адептов деления».

Offline

#453 2010-11-23 20:13:26

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

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

zverik
точка разделитель - это пример. Вообще проблема в том, что роли релейшнов пишутся одним словом. Если бы на роль можно было повесить несколько тэгов - всё бы резко упростилось, и не нужно было бы городить зоопарк. Сейчас главная проблема с маршрутами даже не в том, что остановки задаются разными ролями - это как раз нормально. Проблема в том, что смысл слов "forward" и "backward" определён нечётко и различается для остановок с путями.

Для разбиения маршрута на два нужны веские основания. Попытка навязать всем остановкам одинаковые роли - недостаточное основание.

Offline

#454 2010-11-23 20:18:58

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

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

так не надо вешать forward и backward на остановки.
а на пути — относительно направления вея, как в других применениях.

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

Offline

#455 2010-11-23 20:31:45

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

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

zverik wrote:

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

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

В белорусской адресации есть отношение address=house, обозначающее дом. Однако релейшн на каждый дом - слишком большой перерасход по сложности структуры и сложности дальнейшего обслуживания. Поэтому почти все дома адресуются костылём. И вообще, сложность этой схемы привела к тому, что никто её так и не использует.

В схеме Oxomoa на каждую остановку предлагается навесить relation. Это обстоятельство гарантирует, что схема эта никогда на практике работать не будет.

Мне не кажется ненормальным использование ролей релейшнов в целях указания свойств остановок в данном конкретном маршруте. Это просто, наглядно и экономно. Если возникает конфликт в использовании forward/backward - можно использовать другие слова. Для остановок только для высадки можно указывать stop:exit. Только для посадки - stop:enter. Это именно то, что нужно для навигации по маршруту, и это вполне приемлемо работает в замороченных случаях.

Offline

#456 2010-11-23 21:12:27

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

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

Но суть схемы-то не в том, что создаётся тысяча отношений. Напротив, часто одно-два отношения на маршрут — это максимум. Да, остановки можно вырисовать подробно, нарисовать stop_position, саму остановку, платформу, объединить всё это в отношение stop_area. Точно так же можно в лесу вырисовывать просеки, отмечать type=* species=*, ставить natural=tree — а можно просто обвести всё natural=wood, и будет достаточно хорошо. Отлично даже для большинства применений.

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

Мой вопрос в том, зачем вообще отмечать остановки в разные стороны разными ролями? Чем они отличаются? Там остановка и там остановка.

Ты говоришь, что forward:stop и backward:stop «просты, наглядны и экономны». Но в теме постоянно появляются вопросы, относительно чего forward и backward. На странице отношения непонятно, какие из точек к какому направлению относятся. А просто stop всяко экономнее и быстрее для понимания, чем stop с префиксами. То есть, все три прилагательных неверны, и более применимы к схеме Oxomoa.

Ты предлагаешь stop:exit. Вместе с forward:stop. Получается forward:stop:exit? Просто и наглядно indeed.

Offline

#457 2010-11-23 21:21:16

Stud555
Member
From: г.Истра, МО
Registered: 2010-07-05
Posts: 572
Website

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

Alexandr Zeinalov wrote:

Если возникает конфликт в использовании forward/backward - можно использовать другие слова. Для остановок только для высадки можно указывать stop:exit. Только для посадки - stop:enter. Это именно то, что нужно для навигации по маршруту, и это вполне приемлемо работает в замороченных случаях.

Мне тоже кажется, что forward/backward только вносят путаницу. Нужно ввести новые теги по названиям которым четко было бы понятно, что вей принадлежит маршруту "туда" и дублировать этот вей с пометкой "обратно". А направление вея вообще не принципиально. И по поводу остановок тоже согласен.

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


Мапим прям с дивана город Дедовск
Валидаторы: Почта России, Как проехать в деревню . Разработка ОСМ.РУ, вики

Offline

#458 2010-11-23 21:38:23

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

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

zverik wrote:

Мой вопрос в том, зачем вообще отмечать остановки в разные стороны разными ролями? Чем они отличаются? Там остановка и там остановка.

А чем отличаются маршруты номер 666? Там 666 и тут 666. Почему их два? Не надо заниматься словесной демагогией. Если смысл роли определён чётко - не будет глупых вопросов.

Ты говоришь, что forward:stop и backward:stop «просты, наглядны и экономны». Но в теме постоянно появляются вопросы, относительно чего forward и backward. На странице отношения непонятно, какие из точек к какому направлению относятся. А просто stop всяко экономнее и быстрее для понимания, чем stop с префиксами.

Я зря написал предложение использовать другие слова вместо forward/backward? Все проблемы - не от использования разных ролей, а от того, что в ролях используются одни и те же слова с существенно разным смыслом.

Offline

#459 2010-11-23 21:56:02

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

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

Stud555 wrote:

Мне тоже кажется, что forward/backward только вносят путаницу. Нужно ввести новые теги по названиям которым четко было бы понятно, что вей принадлежит маршруту "туда" и дублировать этот вей с пометкой "обратно".

Да, это правильная идея, и в случае с тэгами роли хорошо реализуемая. Но в текущей ситуации мы получим какую-нить какафонию типа forward:forward или backward:forward, где одно слово означает направление по маршруту, а второе - относительно направления вея. Да, можно изменить слова в одной из частей, но это всё равно будет неудобно.

Веи просто должны сортироваться по порядку, а forward/backward - отражать направление относительно вея. Есть гораздо более простое решение, чем делить на два релейшна - включить в отношение точку разрыва, скажем, с ролью split. До неё будет одна сторона маршрута, после - другая. Если вместо split стоит какой-нить official_split - значит, тут маршрут прерывается лишь формально, на деле автобус едет дальше. Использование такого объекта позволит также обойтись только ролью stop для остановок.

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

А направление вея вообще не принципиально.

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

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

Кстати, интересная мысль: перед остановкой с ролью stop ставить мембер stop:waypoint - роутинговую ноду на линии. Алгоритм должен будет считать stop:waypoint и следующий за ним stop связанными объектами. Роутинг будет идти между stop:waypoint, а пассажиру будет показываться перемещение между stop. Мда, число костылей растёт...

Offline

#460 2010-11-23 22:19:13

zverik
Member
From: Saint-Petersburg
Registered: 2009-07-31
Posts: 771

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

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

Offline

#461 2010-11-24 02:22:26

wildMan
Member
From: Minsk
Registered: 2008-03-05
Posts: 509

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

Alexandr Zeinalov wrote:

...В белорусской адресации есть отношение address=house, обозначающее дом. Однако релейшн на каждый дом - слишком большой перерасход по сложности структуры и сложности дальнейшего обслуживания. Поэтому почти все дома адресуются костылём.

как у автора схемы у меня к вам один единственный вопрос - вы хотябы драфт прочитали прежде чем такую глупость сказать?

Alexandr Zeinalov wrote:

И вообще, сложность этой схемы привела к тому, что никто её так и не использует...

пруфлинк пожалуйста. я например прямо сейчас наблюдаю более 2к использований. причем не только в РБ.


--
OSMF BY Team

Offline

#462 2010-11-24 07:41:58

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

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

wildMan wrote:

как у автора схемы у меня к вам один единственный вопрос - вы хотябы драфт прочитали прежде чем такую глупость сказать?

Читал, конечно. Было бы красиво на каждый дом вешать house, но ведь пришлось придумать второй вариант...

пруфлинк пожалуйста. я например прямо сейчас наблюдаю более 2к использований. причем не только в РБ.

Ну и пусть несколько улиц Москвы так обозначено - всё равно это капля в море, да и ни в один навигатор это не попадёт.

Offline

#463 2010-11-24 10:44:18

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,950

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

Alexandr Zeinalov wrote:

Читал, конечно. Было бы красиво на каждый дом вешать house, но ведь пришлось придумать второй вариант...

Явно не читали. Там не на каждый дом вешается релейшен.

Offline

#464 2010-11-24 12:42:12

wildMan
Member
From: Minsk
Registered: 2008-03-05
Posts: 509

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

Alexandr Zeinalov wrote:
wildMan wrote:

как у автора схемы у меня к вам один единственный вопрос - вы хотябы драфт прочитали прежде чем такую глупость сказать?

Читал, конечно. Было бы красиво на каждый дом вешать house, но ведь пришлось придумать второй вариант...

как уже указали - явно не читали.
релейшен вешается ТОЛЬКО в исключительных случаях.

Alexandr Zeinalov wrote:

пруфлинк пожалуйста. я например прямо сейчас наблюдаю более 2к использований. причем не только в РБ.

Ну и пусть несколько улиц Москвы так обозначено - всё равно это капля в море, да и ни в один навигатор это не попадёт.

как минимум вы подтасовываете факты. карты для навител и гармин делаются именно с использованием данной схемы.


--
OSMF BY Team

Offline

#465 2010-11-24 12:47:43

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,699
Website

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

wildMan wrote:

как уже указали - явно не читали.

Это вы меня невнимательно читаете. Я говорю о том, что _логично_ все дома надо означать _одинаково_ - релейшнами house, используя тот же принцип, что и для других уровней иерархии. Но это неудобно, поэтому большинство домов обозначается _не так_.

как минимум вы подтасовываете факты. карты для навител и гармин делаются именно с использованием данной схемы.

Я говорил про весь мир. Указанные карты делаются ТОЛЬКО для РБ и ТОЛЬКО с использованием препроцессора, который подкручивает дампы до совсем другой схемы. Все остальные использования этой схемы по всей планете идут насмарку, поэтому схема эта и не будет работать.

Last edited by Alexandr Zeinalov (2010-11-24 12:52:07)

Offline

#466 2010-11-24 13:44:24

wildMan
Member
From: Minsk
Registered: 2008-03-05
Posts: 509

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

Alexandr Zeinalov wrote:
wildMan wrote:

как уже указали - явно не читали.

Это вы меня невнимательно читаете. Я говорю о том, что _логично_ все дома надо означать _одинаково_ - релейшнами house, используя тот же принцип, что и для других уровней иерархии. Но это неудобно, поэтому большинство домов обозначается _не так_.

повторяю ещё раз
"релейшен вешается ТОЛЬКО в исключительных случаях."
не только для домов, а для всех уровнях иерархии. даже для нас. пункта - релейшен создаётся только в исключительных случаях. этот случай - наличие адресации внутри этого пункта (по РБ - меньше полупроцента нас. пунктов). и это указано в драфте схемы. именно для этого схема и создавалась чтобы не вешать релейшен на каждый объект.
иначе просто использовалась бы явно неудачная схема - http://wiki.openstreetmap.org/wiki/Rela … _Addresses

откуда вы придумали своё "логично" - непонятно.

Alexandr Zeinalov wrote:

Я говорил про весь мир. Указанные карты делаются ТОЛЬКО для РБ и ТОЛЬКО с использованием препроцессора, который подкручивает дампы до совсем другой схемы. Все остальные использования этой схемы по всей планете идут насмарку, поэтому схема эта и не будет работать.

данный поток мыслей не осилил.

все карты на основе OSM создаются препроцессингом того или иного толка. ибо для каждого результата - нужна собственная обработка.
для рендера в мапник это: api -> *.osm -> mapnik pg (причем для рендера мапника для USA есть дополнительные телодвижения для их автомагистралей)
для навитела это: api -> *.osm -> osm2mp -> *.mp -> gpsmapedit
для гармина это: api -> *.osm -> osm2mp -> *.mp -> mp-housesearch.pl -> *.mp -> gpsmapedit
или api -> *.osm -> osm2mp -> *.mp -> mp-housesearch.pl -> *.mp -> mp2shp -> MPC
для ситигида - тоже используется препроцессинг mp2mp как я понимаю
да. для РБ, используется собственный препроцессор. и как это можно считать недостатком?

Last edited by wildMan (2010-11-24 13:46:08)


--
OSMF BY Team

Offline

#467 2010-11-25 08:41:17

Stud555
Member
From: г.Истра, МО
Registered: 2010-07-05
Posts: 572
Website

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

Я конечно извиняюсь, что встреваю в Ваш спор. Но о чем Вы спорите? О "Маршрутах общественного транспорта"? Где хоть слово или совет по роутингу для общественного транспорта?


Мапим прям с дивана город Дедовск
Валидаторы: Почта России, Как проехать в деревню . Разработка ОСМ.РУ, вики

Offline

#468 2010-11-25 13:39:14

Stud555
Member
From: г.Истра, МО
Registered: 2010-07-05
Posts: 572
Website

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

Покрасил ошибки http://stud555.sbin.ru/buserror.php


Мапим прям с дивана город Дедовск
Валидаторы: Почта России, Как проехать в деревню . Разработка ОСМ.РУ, вики

Offline

#469 2010-11-29 09:09:01

Stud555
Member
From: г.Истра, МО
Registered: 2010-07-05
Posts: 572
Website

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

Новое в общественном транспорте "Станции пересадок" http://stud555.sbin.ru/


Мапим прям с дивана город Дедовск
Валидаторы: Почта России, Как проехать в деревню . Разработка ОСМ.РУ, вики

Offline

#470 2010-12-01 09:05:11

Дмитрий Кудряшов
Member
From: Санкт-Петербург, Пушкин
Registered: 2010-06-15
Posts: 444

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

Stud555 wrote:

Покрасил ошибки http://stud555.sbin.ru/buserror.php

При формировании отчёта иногда неправильно заполняется графа Название - назание маршрута берётся из другого существующего маршрута.
В данном случае "ж.д. ст. "Александровская""-"улица Костюшко" это маршрут № 155 в Санкт-Петербурге.

121520480.jpg

Offline

#471 2010-12-01 10:14:59

Stud555
Member
From: г.Истра, МО
Registered: 2010-07-05
Posts: 572
Website

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

Дмитрий Кудряшов wrote:
Stud555 wrote:

Покрасил ошибки http://stud555.sbin.ru/buserror.php

При формировании отчёта иногда неправильно заполняется графа Название - назание маршрута берётся из другого существующего маршрута.
В данном случае "ж.д. ст. "Александровская""-"улица Костюшко" это маршрут № 155 в Санкт-Петербурге.

Спасибо за ошибку. Поправил.

P.S. Маршруты стали активно пополняться и приводиться в человеческий вид. Я рад smile


Мапим прям с дивана город Дедовск
Валидаторы: Почта России, Как проехать в деревню . Разработка ОСМ.РУ, вики

Offline

#472 2010-12-01 10:47:39

Дмитрий Кудряшов
Member
From: Санкт-Петербург, Пушкин
Registered: 2010-06-15
Posts: 444

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

Stud555 wrote:
Дмитрий Кудряшов wrote:

При формировании отчёта иногда неправильно заполняется графа Название ...

Поправил.

P.S. Маршруты стали активно пополняться и приводиться в человеческий вид. Я рад smile

Спасибо.
Ну так, если можно проверять, отображать и роутинг планируется - появляется стимул. cool

Можно подкинуть пару мыслей для Вашей "проверялки"?
1. У точек обозначающих остановки может быть тег route_ref. Мне кажется, было бы полезно проверять для остановок, входящих в релейшен, наличие этого тега, и второй этап: при его наличии - проверить, если в нём номер проверяемого маршрута.
2. И обратная проверка: поискать остановки в окрестностях маршрута, которые в теге route_ref имеёт номер искомого маршрута, но не вошли в релейшен маршрута, ни в прямой, не в обратный (при варианте - разные релейшины на разные направления).

Спасибо за Ваше "подвижничество". wink

Offline

#473 2010-12-01 13:03:44

Stud555
Member
From: г.Истра, МО
Registered: 2010-07-05
Posts: 572
Website

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

Дмитрий Кудряшов wrote:

Можно подкинуть пару мыслей для Вашей "проверялки"?

Я всегда "за" новые идеи. Как говориться одна голова хорошо, а больше - это уже мутант smile

Дмитрий Кудряшов wrote:

1. У точек обозначающих остановки может быть тег route_ref. Мне кажется, было бы полезно проверять для остановок, входящих в релейшен, наличие этого тега, и второй этап: при его наличии - проверить, если в нём номер проверяемого маршрута.

Я такой тег первый раз вижу. Учту. Добавлю эту идею в свой блокнотик. Если можно, примерчик где есть этот тег?

Дмитрий Кудряшов wrote:

Спасибо за Ваше "подвижничество". wink

Спасибо и вам всем за поддержку smile


Мапим прям с дивана город Дедовск
Валидаторы: Почта России, Как проехать в деревню . Разработка ОСМ.РУ, вики

Offline

#474 2010-12-01 16:05:15

Дмитрий Кудряшов
Member
From: Санкт-Петербург, Пушкин
Registered: 2010-06-15
Posts: 444

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

Stud555 wrote:

Я такой тег первый раз вижу. Учту. Добавлю эту идею в свой блокнотик. Если можно, примерчик где есть этот тег?

я его нашёл здесь: http://wiki.openstreetmap.org/wiki/RU:T … 3Dbus_stop
Статистика в Европе:
bus_stop  - 562135 (100%)
route_ref  - 43132 (7,7%_
источник - http://tagwatch.stoecker.eu/Europe/En/t … _stop.html

Offline

#475 2010-12-01 18:51:41

Stud555
Member
From: г.Истра, МО
Registered: 2010-07-05
Posts: 572
Website

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

Дмитрий Кудряшов wrote:
Stud555 wrote:

Я такой тег первый раз вижу. Учту. Добавлю эту идею в свой блокнотик. Если можно, примерчик где есть этот тег?

я его нашёл здесь: http://wiki.openstreetmap.org/wiki/RU:T … 3Dbus_stop
Статистика в Европе:
bus_stop  - 562135 (100%)
route_ref  - 43132 (7,7%_
источник - http://tagwatch.stoecker.eu/Europe/En/t … _stop.html

Этот тег "route_ref=66A;123;456;s78;x9" самый нужный smile Обязательно теперь буду на него обращать внимание.


Мапим прям с дивана город Дедовск
Валидаторы: Почта России, Как проехать в деревню . Разработка ОСМ.РУ, вики

Offline

Board footer

Powered by FluxBB