Данные OSM и маршрутизация в популярных навигационных программах

Мне категорически интересно какие именно теги из базы OSM использует нав.софт (СитиГид, Навитель, Османд, 7Дорог и другие) для построения маршрута, какие теги учитываются при прокладке маршрута, какие поддерживаются (начиная с класса дорог/покрытия/качества покрытия и т.д.). Нужно мне это для лучшего понимания того, почему маршрут был проложен именно так, а не эдак, например.

Ага, так тут и скажут. Ведь все начнут править под навигатор.

Ну и замечательно, а как же ещё?, маршрутизация и нужна для навигации. Если маршрут в программе кладётся не так, как все ездят, надо править теги. Вернее тег, который кроме как для маршрутизации ни для чего не используется и даёт исчерпывающую информацию для роутинга, это максспидпрактикал.
ИМХО программа навигации должна ориентироваться на него, и лишь при его отсутсвии начинать высасывать из пальца, то бишь из смусерс, сурвейс и т. п.

ЩИТО?

Может, лучше логику программы править?

Карты для Ситигид, Навител и 7 дорог собираются через osm2mp, соответственно используемые теги определяются конфигом к ней

Конфиг для Ситигида - https://github.com/Zkir/osm2dcm/blob/master/osm2dcm/osm2mp.config/
Конфиг для Навител и 7 дорог - https://osm2navitel.googlecode.com/svn/trunk/cfg/

Часть тегов (типа maxspeed/maxspeed:practical/layer) зашиты в код osm2mp

Если все едут по дороге А, а прога ведёт по дороге Б это не обязательно значит, что у проги неправильная логика, возможно не правильно проставлены теги и пробуя составлять маршрут я проверяю свою работу и корректирую. Теги для маршрутизации можно ставить только под рендер. Но для макспидпрактикал это актуально, в этом теге конкретная цифра для рассчёта роутинга.

Если все едут по дороге А, а прога ведёт по дороге Б это не обязательно значит, что у проги неправильная логика, возможно не правильно проставлены теги и пробуя составлять маршрут я проверяю свою работу и корректирую. Теги для маршрутизации можно ставить только под рендер. Но для макспидпрактикал это не актуально, в этом теге конкретная цифра для рассчёта роутинга.

Если все едут по дороге А, а прога ведёт по дороге Б это не обязательно значит, что у проги неправильная логика, возможно не правильно проставлены теги и пробуя составлять маршрут я проверяю свою работу и корректирую. Теги для маршрутизации можно ставить только под рендер. Но для макспидпрактикал это не актуально, в этом теге конкретная цифра для рассчёта роутинга.

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

Если все едут по А, а правильней по Б (по статусу), значит многие кудаки просто :slight_smile: Править под роутинг ничего не надо, кроме ms, rst, lns. Кстати в османде lns криво работают, потому пока править бесполезно :frowning:

Судя по форуму СГ, СГ не понимает классы дорог, которые учитываются в Гармине и НН.

Подо что ее править, никакого референсного рутинга в OSM как не было, так и нет. Может оно и к лучшему.

Чё? Какие классы? :slight_smile:

В СГ учитываются теги highway, surface, maxspeed, maxspeed:practical, а также, как ни странно, тег place - дорогам внутри НП присваивается меньшая скорость.

Не учитывается: Smoothness - это пустопоржний тег. Lanes , хотя может и стоило бы. Звериковский surface:grade, потому что его невозможно на данный момент актуализировать.

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

В СГ учитываются теги surface
сколько и каких значений данного ключа?

курить польский, из которого конвертится :slight_smile:

это Zkir’у-то курить? насмешили! :slight_smile:

А мне вот интересно, использует ли кто-нибудь информацию о светофорах, пешеходных переходах и “стопах”?

Отнюдь.
Нужно править алгоритм прокладки маршрута.
А теги должны отражать объективную реальность (truth on the ground), а не подгоняться под конкретные несовершенные алгоритмы (не рисуйте под рендер).

Теги маршрутизации должны просто указывать программе, где лучше проложить маршрут, заменяя миллионы нюансов “on the ground”, которые все предусмотреть и расставить невозможно. И “не рисовать под рендер”, ИМХО, превратилось в самоцель, т. е. чем больше рендеров “сломают зубы” на наших данных, тем лучше.

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

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

спасибо

ясно, спасибо

тоже интересно

Добавлю что для маршрутизации необходимо умещать отношения запретов у границ в пределах региона и разрезать веи по границам регионов и НП.

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

Э-э-э… Turn_restrictions? Route relations?