turn restriction: неудобный стандарт

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

Господа, требуется ваша помощь.
Как инициировать обсуждение варианта с тремя точками, описанного в первом посте ?
Я дробить дороги не хочу, рилейшены создаю (пока без загрузки на сервер), но толку от них мало, если они не будут использоваться в конечном формате для навигации. Еще меньше шансов выжить без поддержки такого типа в JOSM, а это уже требует внимания зарубежных коллег.
Куда следует постить свои предложения - в Relation:restriction/Proposals или Relation:restriction/Talk, или вообще связываться с авторами JOSM ? Каковы шансы что на эти страницы вообще кто-то зайдет ?
Спасибо!

Создаёшь пропозал в Proposed_Features/

Можно ли править Proposed Features по результатам обсуждения (что-то добавить, убавить, переименовать) ? Сомневаюсь что могу всё описать правильно с первого раза :slight_smile:

http://wiki.openstreetmap.org/wiki/Proposed_features тут написано как всё делать. Пока пишешь draft - меняй как хочешь.

Когда после draft начнется стадия RFC — тоже можно менять (верно?).

Рисую то, почему точка->точка->точка “не катят”. Хотя об это уже ранее писалось

Проблем именно в том, что кто-то вставит точку “между” start и via

Это понятно, JOSM надо править, чтобы рестрикшен изменялся автоматом. Зато минимум конфликтов при объединении веев.

Честно признаюсь, из 2-х редакторов, которыми пользуюсь ни один не называется JOSM :smiley:
Первоочередным должен быть potlatch, через него все начинают. Надо решить проблему в принципе, а не писать надстройки под конкретный редактор… текущая система наиболее понятна. Единственное что, нужно что бы в роли via мог выступать way или node->way->node.

А почему бы не переделать роли: вместо from и to сделать from_forward, to_forward и from_backward, to_backward, чтобы было понятно откуда в каком направлении. Если в обоих направлениях запрещён левый поворот, просто 2 релейшена с теми же самыми путями.

А почему бы не провести по трём точкам вей, в котором написать restriction=yes? И запрет опишете, и релейшены не нужны.

PS: неудобство текущей схемы так и не было нормально обосновано.

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

Кстати, у меня в josm плагин этот не работает, приходится всё делать вручную - создавать отношение, добавлять объекты, роли писать.

Я о том и говорю, что надо решать в принципе. Есть же Relation:destination sign, практически один-в-один то что я предлагаю.
Ну давайте назовем его не Turn Restriction, а, например, road_sign.
Дробить междугородные трассы ради примыкающей грунтовки с запретом “налево” - я не понимаю… Или десяток сегментов одной улицы с дублирующимися тегами только ради запретов поворота…

Тоже вариант. Только подправить валидаторы чтобы они не ругались на overlapping ways.

Откуда такая боязнь дробить?

Например изменить какой-то тег у одного сегмента легче чем у десяти. Для кого-то это пустяк, а для нормального (не ГИС-профи, не любителя функции Select и т.д.) человека противоестественно.

Тут по Дмитрия Донского (движение с севера- на юг- на север) запрещён разворот, но не запрещён поворот.
Т.е. только один из поворотов запрещён (второй), но только при условии, что вы совершили первый поворот. Если вы не совершали поворот (т.е. едете с ул. Грина), то поворот не запрещён.
Или я что-то не понял с “from_forward, to_forward и from_backward, to_backward” - для чего они понадобятся?

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

Невозможно отобразить запрет разворота на двухвейной дороге при разрешённом левом повороте. Точнее, это возможно, если в роли via ставить не node, а way. Но навигаторы, как оказывается, этого не воспринимают…

Ну и чем тогда виноват стандарт, если навигаторы все равно не умеют развороты на двухвейной дороге? Тогда уж берите выше - виноваты двухвейные дороги… Или там авторы конвертеров.

Хорошо, переформулирую. Стандарт плох тем, что в данный момент его ни кто не поддерживает. Надеемся, что ситуация изменится.

“Путин плох тем, что в данный момент идет дождь на Нептуне.”

Утверждать “стандарт плох” никак нельзя. Он-то как раз поддерживает всё, что нужно. Опаздывают только навигаторы.