О запрете разворота (no_u_turn)

я вот нашел статистику использования http://tagstat.hypercube.telascience.org/tagdetails.php?tag=divided
Получается, его почти не используют?

Там в пропозале вообще-то тег divider вроде как. Его немного чаще используют.

Да, divider.

А вот у меня назрел вопрос, поскажите, как проходит голосование и принятие предложений? А то нет уверенности использовать или нет divider.

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

Исходные данные: перекресток двух дорог, каждая нарисована как 2-х вейная, везде разрешен поворот налево, но запрещен разворот.
В настоящее время поддерживается конверторами для автонавигаторов хоть какая то схема, позволяющая запретить развороты на таких перекрестках???
Например если в качестве роли “via” указать не точку, а линию, будет ли правильно работать эта схема?

Без модификации графа - нет.
Вернее есть вариант запрета с указанием way вместо точки в роли via, но он никем не поддерживается.

Самый просто способ модификации - стянуть короткие рёбра на перекрёстке в точку, тогда всё решается обычным restriction.

Очередной костылище? А поддержку “запрета с указанием way вместо точки в роли via” добавить никак нельзя, неужели такие случаи редки?

Такие запреты есть у Телеатласа и Навтека (впрочем нам от этого ни холодно ни жарко), но и в полише они описаны для Гармина. Надо консультироваться с liosha поддерживает ли их какой-то из компиляторов Гармина, в коммерческом MPC они точно должны быть.

Поинтересуюсь еще разок на счет поддержки “запрета с указанием way вместо точки в роли via” - это проблема вообще решаемая в тех рамках, которые есть сейчас, или же можно про это забыть? А то конкурировать с официальными картами без костылей не получается :slight_smile: Как то совсем не хочется портить перекрестки…

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

а запрет разворота на прямой дороге вроде накрывает overtaking=no - там где сплошная, там и развернуться нельзя

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

Ну дополнительными рёбрами сделать нужную схему несложно. Вот простейший пример перекрёстка с запретами разворота со всех направлений:

Два дополнительных ребра и по паре relation-ов доп. запретов на каждое направление.
Не такая и большая цена, зато алгоритмы можно не трогать.

А при повороте налево навигатор не будет на таком перекрестке дважды советовать “поверните слегка влево”?

Как нарисовать дополнительные линии - это то ясно, вот только карты будут странно выглядеть с этими крестиками…
Больше вариантов реализации нет в существующей модели? Хотя такое впечатление складывается что в реальности эта проблема никого не волнует - ну не поддерживается запрет разворота в логичном виде - ну и черт с ним :slight_smile: Подумаешь - роутинг кривой - потерпят автомобилисты… Действительно, зачем менять какие то там алгоритмы - не надо трогать что хоть как то работает…
P.S. Кто нибудь по ситуации на сейчас реализал запрет разворотов вышеуказанным способом или это теоретические выкладки?

В osrm с этим запретом какая ситуация?

Так же хреново, не поддерживается при роутинге. (там где в роли via линия а не точка) Их только http://map.comlu.com/?zoom=17&lat=55.178539&lon=30.22942&layer=Mapquest%20Open&overlays=TTT отображает :slight_smile:

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

И это “редко” как всегда выплывает тогда когда едешь :slight_smile: И навигатор предлагает развернуться там где нельзя по правилам… Вроде как и не критично, но очень не приятно. Конечно коммерческие карты такого не допускают - а мы можем и похерить - кому она надо - наша карта - если все равно не правильно по ней роутинг строится…

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

То это ошибка разметки.

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

Разве важно откуда вы приехали?

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