You are not logged in.

#1 2019-10-28 12:57:47

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Двойная сплошная - старт налево, как запретить?

https://forum.openstreetmap.org/viewtopic.php?id=8471  - большинство рекомендует 2 вея только при физическом разделении встречных полос или 3 полосах по крайней мере в одну сторону.
https://wiki.openstreetmap.org/wiki/Pro … es/Divider - предложение не прокатило.

Кроме разделения на два вея, есть ли еще какие-то способы нанести на карту двойную сплошную?
Проблема в том, что не имея этой информации роутеры типа openrouteservice или OSRM смело стартуют налево по одновейной дороге, через двойную сплошную в реале. Расстановкой дорожных знаков (restrictions) это решить невозможно, старт совсем не обязательно происходит на перекрестке.

Offline

#2 2019-10-28 15:24:18

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 8,770

Re: Двойная сплошная - старт налево, как запретить?

Ну при старте вообще не очень-то и ясно с какой стороны дороги вообще машина начинает движение.

Offline

#3 2019-10-28 15:34:01

pfg21
Member
From: Чебоксары
Registered: 2012-10-18
Posts: 3,633

Re: Двойная сплошная - старт налево, как запретить?

чегойто ты путаешь.
осрм просто так не разворачивает, вот пример
http://map.project-osrm.org/?z=16&cente … C46.766235
вместо разворота на ближайшем перекрестке (как ты утверждаешь) осрм тянет в какие-то бубеня.
на дороге никаких запретов поворотов нет. https://www.openstreetmap.org/way/292491959

Last edited by pfg21 (2019-10-28 15:34:36)

Offline

#4 2019-10-28 16:30:17

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

pfg21 wrote:

чегойто ты путаешь.
осрм просто так не разворачивает, вот пример
http://map.project-osrm.org/?z=16&cente … C46.766235
вместо разворота на ближайшем перекрестке (как ты утверждаешь) осрм тянет в какие-то бубеня.
на дороге никаких запретов поворотов нет. https://www.openstreetmap.org/way/292491959

Ничего не говорил про разворот на ближайшем перекрестке, это о чем?

Вот пример старта налево через двойную сплошную, имеющуюся в реале, но никак не нанесенную на карту:
http://map.project-osrm.org/?z=17&cente … l=en&alt=0

Роутер просто ничего не знает про это ограничение - карта его не содержит.

Offline

#5 2019-10-28 16:42:22

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

wowik wrote:

Ну при старте вообще не очень-то и ясно с какой стороны дороги вообще машина начинает движение.

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

Offline

#6 2019-10-28 17:08:36

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 8,770

Re: Двойная сплошная - старт налево, как запретить?

Такое творится от сотворения мира.
Никакой навигатор, пока я не разгонюсь, не понимал в какую сторону мне маршрут строить, куда нос у машины повернут.

Offline

#7 2019-10-28 17:13:00

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

wowik wrote:

Такое творится от сотворения мира.
Никакой навигатор, пока я не разгонюсь, не понимал в какую сторону мне маршрут строить, куда нос у машины повернут.

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

Offline

#8 2019-10-28 17:36:33

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 8,770

Re: Двойная сплошная - старт налево, как запретить?

Значит им просто не хватает такой фичи, чтобы знать в какую сторону направлен нос машины на старте.
Могли бы они, конечно, в качестве подсказки учитывать с какой стороны дороги точка старта.

Кстати, почти та же ботва и на точке финиша. Навигатор часто ведет на противоположную сторону дороги.
То есть надо еще понимать в какую сторону должен быть направлен нос машины на финище.

Offline

#9 2019-10-28 17:45:36

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

wowik wrote:

Значит им просто не хватает такой фичи, чтобы знать в какую сторону направлен нос машины на старте.
Могли бы они, конечно, в качестве подсказки учитывать с какой стороны дороги точка старта.

Кстати, почти та же ботва и на точке финиша. Навигатор часто ведет на противоположную сторону дороги.
То есть надо еще понимать в какую сторону должен быть направлен нос машины на финище.

Не понял,  при _планировании_ рейса как можно знать куда направлен нос машины? Речь к примеру о расчете сегодня вечером рейсов которые отправятся завтра утром.

Offline

#10 2019-10-29 09:27:05

ABCh
Member
From: Челябинск
Registered: 2012-06-19
Posts: 40

Re: Двойная сплошная - старт налево, как запретить?

wowik
Причем тут нос машины? Заданы адреса начальной и конечной точки. Известно, на какой стороне дороги каждая из точек находится. Нужно с учетом ограничений знаков и дорожной разметки проложить маршрут.

Offline

#11 2019-10-29 09:52:17

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 7,947

Re: Двойная сплошная - старт налево, как запретить?

ABCh wrote:

wowik
Причем тут нос машины? Заданы адреса начальной и конечной точки. Известно, на какой стороне дороги каждая из точек находится. Нужно с учетом ограничений знаков и дорожной разметки проложить маршрут.

Решается доработкой сервиса прокладки маршрута.

Offline

#12 2019-10-29 09:54:04

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 8,770

Re: Двойная сплошная - старт налево, как запретить?

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

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

Last edited by wowik (2019-10-29 09:54:38)

Offline

#13 2019-10-29 10:03:35

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 8,770

Re: Двойная сплошная - старт налево, как запретить?

Вообще-то можно все и разметить
Немного отступив от перекрестка

lanes=2
lane_markings=yes
turn:lanes:forward=none
turn:lanes:backward=none

Хотя перед местами, где правые повороты надо типа
turn:lanes:forward=through;right
а потом опять
turn:lanes:forward=none

Offline

#14 2019-10-29 10:34:02

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

freeExec wrote:

Решается доработкой сервиса прокладки маршрута.

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

Offline

#15 2019-10-29 10:47:25

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

wowik wrote:

Вообще-то можно все и разметить
Немного отступив от перекрестка

lanes=2
lane_markings=yes
turn:lanes:forward=none
turn:lanes:backward=none

Хотя перед местами, где правые повороты надо типа
turn:lanes:forward=through;right
а потом опять
turn:lanes:forward=none

turn:lanes:forward=through  наверно. none это отсутствие регулирования.
https://wiki.openstreetmap.org/wiki/Key:turn

Для запрета поворота с движения должно работать. Про старт там ничего не написано, строго говоря.

Offline

#16 2019-10-29 10:57:48

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 7,947

Re: Двойная сплошная - старт налево, как запретить?

Serg Levin wrote:

На карте сейчас нет никаких указаний, позволяющих различить эти случаи.

Если там 4 полосы то нельзя. А если две со сплошной, то должно стоять обгон запрещён.

Offline

#17 2019-10-29 11:19:07

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

freeExec wrote:

Если там 4 полосы то нельзя.

Это типа в реале? Программа (роутер) откуда это возьмет?

freeExec wrote:

А если две со сплошной, то должно стоять обгон запрещён.

Положим стоит

overtaking=no

. Но при старте по какой причине роутер должен это воспринимать как двойную сплошную?

Offline

#18 2019-10-30 19:42:45

Serg Levin
Member
Registered: 2019-03-13
Posts: 11

Re: Двойная сплошная - старт налево, как запретить?

Про turn:lanes=*

Обозначения поворота
Ключ turn=* может использоваться для обозначения «помеченного» направления, в котором ведёт дорога или полоса. Он используется на сегменте линии от первого обозначения с помощью дорожной разметки, дорожных знаков или подобных обозначений до перекрёстка или завершения слияния. Если вы хотите обозначить юридические ограничения поворотов, смотрите страницу RU:Отношения - ограничения.

Т.е. этот тэг предназначен для нанесения на карту информации об информационной разметке, которая сообщает, какие ограничения ждут впереди на перекрестке, но сама по себе ничего не запрещает. В частности, о разметке в виде стрелок на проезжей части в ПДД РФ сказано:

1.18 - указывает разрешенные на перекрестке направления движения по полосам. Разметка с изображением тупика наносится для указания того, что поворот на ближайшую проезжую часть запрещен; разметка, разрешающая поворот налево из крайней левой полосы, разрешает и разворот;

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

Выходит, нужен бы специальный тег про двойную сплошную.

Offline

#19 2019-12-09 03:32:04

LLlypuk82
Member
From: Витебск (Беларусь)
Registered: 2012-12-23
Posts: 2,443
Website

Re: Двойная сплошная - старт налево, как запретить?

Serg Levin wrote:

Роутер просто ничего не знает про это ограничение - карта его не содержит.

Роутер может учитывать только движение по имеющимся у него линиям дорог. Там будет полезно расставить запреты левых поворотов из дворов (а обычно оттуда и выезжает транспорт, обслуживающий торговые точки).
Если Вы занимаетесь планированием маршрута, то вряд ли тупо расставляете все точки отбалды в ожидании чудесного построения роутером оптимального пути. Наверняка Вы уже представляете более-менее правильную последовательность посещения точек на маршруте, а значит там не будет «внезапных стартов налево через двойную сплошную», т. е. челночного движения сначала туда, потом — обратно, с разворотом, по той же дороге (иначе Вы как-то не так представляете себе удобный маршрут для водителя).
Самое главное: маршрутизатор не может учесть расположения старта «где-то в чистом поле», он его всегда привязывает к определённой точке именно на дороге. Поэтому от наличия или отсутствия тега про двойную сплошную ничего не зависит. Рассчёт пойдёт от точки на дороге, а поскольку она предполагает движение в обоих направлениях, то далее путь будет проложен в зависимости от следующего пункта назначения.

Offline

#20 2019-12-09 08:45:45

Bwr57
Member
From: Екатеринбург, Россия
Registered: 2013-01-05
Posts: 114

Re: Двойная сплошная - старт налево, как запретить?

LLlypuk82 wrote:
Serg Levin wrote:

Роутер просто ничего не знает про это ограничение - карта его не содержит.

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

Поэтому товарищ и хочет, чтобы дороги со сплошной белой кодировались двумя вэями. Тогда при остановке на обочине или выезде с прилегающей машина окажется на односторонней дороге и роутер сможет правильно просчитать маршрут. По мне так не вариант. Заносить ограничения для каждой прилегающей тоже вряд ли рационально. Во-первых, разметка меняется довольно регулярно или вообще неизвестна. Во-вторых, это всю планету переделывать придется. В-третьих, эти два вэя надо как-то соединять между собой у каждой прилегающей, где поворот таки разрешен. В-четвертых, на картах рисуются несколько дорог и куча развязок вместо одной дороги, что вводит в заблуждение. А в-пятых, в 99.99 % случаев это все не нужно. Выезд на дорогу и начальное маневрирование возлагается на водителя и он с этим обычно справляется. После того как это сделано, включается навигатор, и дальше можно ехать по нему. Обычно указанная проблема возникает, наоборот, в конце маршрута. Навигатор жизнерадостно подводит по скорейшему маршруту ко въезду во двор и зычно командует: "Поверните налево, во двор!". И плевать ему на двойную сплошную и встречный трафик, делающий разворот практически невозможным. Более рационально повернуть за квартал до цели, объехать ее и спокойно подрулить с противоположенной стороны. Но ждать столь интеллектуального решения от навигатора глупо.
Поэтому, если требуется планировать движение транспорта по карте, наверное, стоит порекомендовать использовать специализированное ПО, учитывающее по умолчанию запрет поворота налево и начальное положение машины,  и/или специально подготовленный набор данных, в котором дороги разделены на два вэя или обочины/прилегающие выделены в отдельные вэи с односторонним движением. Но это не к OSRM или OpenRouteService

Offline

#21 2019-12-09 09:45:20

alexey_zakharenkov
Member
Registered: 2015-12-09
Posts: 24

Re: Двойная сплошная - старт налево, как запретить?

LLlypuk82 wrote:

Роутер может учитывать только движение по имеющимся у него линиям дорог... Самое главное: маршрутизатор не может учесть расположения старта «где-то в чистом поле», он его всегда привязывает к определённой точке именно на дороге.

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

Serg Levin, недавно кто-то попытался выступить в списке рассылки с предложением тега u_turn=yes/no, который ставится на саму линию дороги и, грубо говоря, обозначает отсутствие/наличие сплошной разметки. См. также сам пропозал и его обсуждение. Предложение не вдохновило сообщество, а сам тег u_turn=* пока не используется.

Last edited by alexey_zakharenkov (2019-12-09 09:46:55)

Offline

#22 2019-12-09 22:33:37

LLlypuk82
Member
From: Витебск (Беларусь)
Registered: 2012-12-23
Posts: 2,443
Website

Re: Двойная сплошная - старт налево, как запретить?

Bwr57 wrote:

Заносить ограничения для каждой прилегающей тоже вряд ли рационально.

Вполне реально. Чем детальнее расставлены ограничения, тем точнее будут маршруты.

alexey_zakharenkov wrote:

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

Т. е. уметь в запрет поворота налево относительно виртуального ребра? Идея понятна, но кто будет с этим работать? Расставить u_turn=yes/no не сложно. Сложнее мотивировать разработчиков сервисов по маршрутизации.

Offline

#23 2019-12-09 23:26:37

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 7,947

Re: Двойная сплошная - старт налево, как запретить?

u_turn=yes/no тут вообще никак не поможет, я не видел не одного роутера, который бы разворачивал на ровном месте. А для пересечений дорог и так есть запреты разворота.

Offline

#24 2019-12-11 10:55:11

Bwr57
Member
From: Екатеринбург, Россия
Registered: 2013-01-05
Posts: 114

Re: Двойная сплошная - старт налево, как запретить?

LLlypuk82 wrote:
Bwr57 wrote:

Заносить ограничения для каждой прилегающей тоже вряд ли рационально.

Вполне реально. Чем детальнее расставлены ограничения, тем точнее будут маршруты.

Теоретически это так. На практике возникают сложности. По спутнику Вы такой мэппинг не сделаете. И даже если живете рядом можете не обращать внимание на разметку, которую зимой к тому же не видно. Особенно, если не автолюбитель. Я вот каждый день хожу по Малышева, но где на какие прилегающие можно поворачивать не знаю. Просто не заморачиваюсь. Во-вторых, на ту же Малышева в Екатеринбурге на участке от Луначарского до Восточной выходит 10 съездов во дворы. Плюс есть не отмеченные на карте "карманы". При существующей схеме тэгирования Вам придется разбить один вэй, соответствующий улице, на 11 маленьких вэев, присвоить каждому имя, расписать движение по полосам, освещение и т.д. и для каждого пересечения с выездами во двор добавить по 3 - 4 ограничения. К тому же по Малышева проходит 20+ маршрутов общественного транспорта и их все надо поправлять. Ну и выглядеть отношения маршрутов будут красиво - сотни маленьких вэев от подъезда до подъезда и не дай бог переставишь. Не завидую я тому, кто примется эти ограничения расставлять. Хотя может я ошибаюсь, конечно

Offline

#25 2019-12-11 11:40:48

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 8,770

Re: Двойная сплошная - старт налево, как запретить?

Bwr57 wrote:

На практике возникают сложности

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

Last edited by wowik (2019-12-11 11:41:17)

Offline

Board footer

Powered by FluxBB