Как обозначать? (Part 1)

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

Так зачем их делать ещё и бесполезными? Бесполезны,

. А не следует игнорировать, наоборот — обязательно учитывать (но грамотно, гибко). Или по-вашему это нормально?

Лучше тем, что с таким «форматом» можно работать, ничего не игнорируя и ничего не теряя (как в плане навигации, так и — визуализации).

Ему знать надо только то, что есть пропускные пункты, и показывать это соответствующе, и маршрут строить «условно сквозной» с маркировкой «проблемных мест», а по-хорошему (в общем случае) — предлагать объезд (если он возможен в рамках имеющегося графа). Давно существует функция «альтернативные маршруты» (быстрый/короткий/по прямой и т. п.), почему бы её не использовать?

Взялось из моего теоритизирования (косвенно подтверждённого практикой, ниже поясню). Об игнорировании, по-моему, только сторонники «приватизации» дорог говорили, в отличие от меня.
Теперь случай из практики.
Ехал с OsmAnd по городу, который с большего знаю. Удивляло, что маршрут никак не хотел «ложиться» через один участок, где явно лучше ехать. Оказалось, что новичок влепил кое-где некорректную «односторонку» и получился затык. Но, поскольку ехал я всё равно по той дороге, то проехав «кривой» участок графа, увидел, что маршрут скорректировался и перестал петлять крюками.
Это наглядно демонстрирует возможность комбинирования перерасчёта (а точнее — дальнейшего пошагового расчёта) маршрута на ходу с учётом «затычек» (только не в виде некорректной односторонней дороги, а в виде точек пропуска) и предложения объезда (если таковой возможен).

Спасибо, пропустил этот выпуск, очень интересный. В ближайшее время проставлю теги name на sidewalk в районах, которыми интересуюсь.

В итоге:
Человек смотрит на карту, желая сориентироваться, и видит заштрихованную, или обведённую красной линией, или ещё как обозначенную территорию. Он может понять, что она «не простая» и принять соотв. решение.
Другой — едет по навигатору, который показывает, например, короткий путь, но с предупреждением, что там могут быть проблемы (и конкретные места, где они должны начинаться), плюс к этому — объездной путь, в обход сомнительных участков. Выбор — за человеком, важно, чтобы он был и был понятным, а также корректно учитывалась обстановка на местности.

@ullus
а меня ещё интересует как разделять тротуары на перекрёстках. Ведь зачастую там не на 90° поворот, а закруглённый. Логично делить где то посередине поврота. Сможет ли понимать навигатор что надо свернуть именно с улицы на улицу, не получится ли такого, что будет что-то типа “сверните, идите прямо до улица такой то, сверните”. Мне кажется тут нужен какой-то аналог link’ов. Хотя может я и не прав и никакой сложности тут не будет.

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

Маршрутизатор показывает или маршрут строит?

Может, не условно-сквозной, а просто игнорирующий точки access?

Для начала хоть какой постройте в ЗАТО, но в обход военной базы. Только с точками access (как вы предлагаете работает).

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

По поводу ЗАТО - уже реально задолбали: ни один навигатор не имеет опции для территорий, куда требуется пропуск, потому пытаться подстроиться под это каким-то особым обозначением в самом OSM вдвойне бессмысленно - все равно навигатор либо сможет только довести до ворот, либо полностью проигнорировать ограничение доступа. В лучшем случае - сможет выдать какое-то предупреждение (если у него есть какой-то подобный универсальный функционал), которое можно с одинаковым успехом сгенерировать и по тегам, висящим на точке, и по началу way, который отмечен теми же тегами ограничения.

Резюмируя: способ обозначения на way - универсален и требует конечного малого числа действий по учету ограничений при роутинге.
Способ обозначения на node - не универсален, требует неопределенного числа действий по учету ограничений из-за неопределенности направления действия и не может быть универсально подкреплен использованием полигонов с ограничением.

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

http://www.openstreetmap.org/relation/1428992#map=11/54.9114/43.3562

Какая разница, граф “упирается” в запрещающую точку или запрещеющую линию? Такое же количество “телодвижений” для роутера, чтобы понять с какой же стороны можно

Ну да, запреты поворотов тогда надо выпиливать, они очень “затратны”, там надо определять направление. Нужно просто на одну из дорог вешать private и будет счастье.

Запреты поворотов требуют всегда конечного числа действий, потому что там есть внятное отношение. Точка с access=private - это хрен знает что, сравнивать эти случаи нельзя.

Намёк был на то, что можно перенять опыт с from/via/to раз просто точки мало. Сейчас конечно заминусуют за перекладывать телодвижения и конвертера на мапера, но похоже не угодишь: теги плохо, отношения ещё хуже.

Хорошая идея, но это же таааак сложно :slight_smile:
А

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

Вот здесь (http://forum.openstreetmap.org/viewtopic.php?pid=575652#p575652) я полностью согласен с BushmanK. Для тех, кто не понял, о чем он говорит - прочитайте еще раз и вдумчиво.

Для тех кто сомневается пусть попробуют построить маршрут на или из такой территории

Вот два примера -

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

Пока что намного проще отбрасывать при построении маршрута часть графа с access=private (OSRM) либо не обращать внимание на сам access=private (Mapzen).

В идеале, конечно, чтобы (сферический в вакууме) навигатор мог строить маршрут внутри полигона, который сам имеет access=private, и наружу из такого полигона. Хотя, по логике вещей, во всех уважающих себя органах (организациях, предприятиях, территориях - частных, военных, коммерческих) с ограниченным доступом, всех посетителей встречают на КПП и сопровождают по территории до необходимого места - нечего гостям праздно шататься по территории. Также на таких территориях есть разные зоны з разным уровнем доступа, на которые даже не все резиденты имеют право доступа! Тут как быть {Private {Private {Private{…}}{Private}}}? А оно вообще за пределами этих территорий кому нужно?

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

PS В текущей версии API, пока кроме топологической вложенности остальные отношения (relation) для большинства участников – что-то ОЧЕНЬ непонятное/страшное, так и будем мучаться :smiley:

Никто не сомневается. В этом и проблема: создать почву для более адекватной маршрутизации, а не

Не надо никакой «иерархии секретности», вам её на месте объяснят, если потребуется. А для навигации — достаточно показать сам факт «закрытости», ничего не отбрасывая, и предложить альтернативы (при их наличии).

Вот пример многоуровневых ограничений

  1. В садоводство(или еще куда) допуск ограничен.
  2. Внутри садоводства на частные участки допуск ограничен даже для тех, кто уже допущен в садоводство.

Допуски, как и секретность имеют уровни - это же банально.
А в ОСМ с этим не очень.

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

Не понятно что это значит вообще.

Да, какой-то навигатор не имеет опции. В некоторых навигаторах есть опции обхода площадей. В некоторых - избегания участков дорог.

Опций нет потому что данных не было никогда для этого.

Смущают отношения значит тегами

visa:russian=no

по примеру

https://en.wikipedia.org/wiki/Template:Visa_policy_by_country
https://en.wikipedia.org/wiki/Template:Visa_requirements

Далее, внутри России, но до ЗАТО:
access=ru:ZATO-Zvyozdny

Внутри зато, но до военной части 123456:
access=ru:MO-123456

Пользователь в настройках навигатора втыкивает “у меня есть паспорт Россиянина”, access=ru:ZATO-Zvyozdny но не access=ru:MO-123456 и радуется.

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

  • Куда вешать ограничения (на точки, дороги целиком, территории)
  • Какие ограничения вешать, чтобы описать ситуацию адекватно
  • Что с этим всем великолепием может делать навигатор (мы не должны от этого отталкиваться, но можем об этом думать)

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

Были и другие аргументированные мнения. Ваши аргументы также недостаточно сильны (см. контраргументы среди других мнений).

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

Не “нужны” они на way, подходов много как всегда:

Можно обойтись

  1. отношением из всех дорог внутри СНТ
  2. несколькими сотнями отношений из дорог на участке

Либо

  1. придумать тег access=ru:СНТ Ромашка (Васильевская область) для внешних заездов в СНТ
  2. придумать теги access=ru:СНТ Ромашка (Васильевская область):участок 1234 для внешних заездов на участки

Чем принципиально линии лучше отношений или точек вообще не сказано, зато много оффтопика.