Конвертация OSM в Navitel

по районам, взятым мной, лог ошибок будет. Если получится - другие районы тоже обработаю.
Ссылку на лог ошибок помещаю в “таблицу пирога” в столбец Е. Кодировку, возможно, потребуется вручную поменять в браузере на UTF-8

Народ, прощу помощи в содействии. Нужна карта для Навитела, но адоптированная для пешехода. На форуме есть тема http://forum.openstreetmap.org/viewtopic.php?id=5350&p=1 но она скорей мертва чем жива и приведенные в ней рекомендации давно уже устарели. Просидев не один вечер, мне удалось сконвертировать osm в Навител, используя ключи --transport=pedestrian, --nooneway, маршрут прокладывается игнорируя правила дорожного движения, НО не работает роутинг между «тропами» и остальными дорогами, а это важно. Пробовал несколько вариантов, использовал конфиги из похожей темы белорусских друзей, но ситуация не изменилась. Чувствую самостоятельно не разберусь, т.к. никогда ранее ничем подобным не занимался. Просьба - либо дать наводку, желательно подробную, либо сконвертировать и куда-нить выложить карту Москвы адоптированную для пешеходов. Нужно чтобы маршрут строился кротчайшим путем но при этом приоритет отдавался бы дорогам рассчитанным на пешеходов, т.е. при прокладке маршрута ТТК, МКАД и т.д. задействовались бы в последнюю очередь.
Надеюсь на помощь.

в №29 ошибки поправил. чтобы проверить все поправилось или нет, стоит дождаться обновления данных

по-моему надо начинать конвертировать карты и для пешеходов :wink:
и складывать их отдельной стопочкой на fmesh

Вот здесь есть подсказка: http://forum.openstreetmap.org/viewtopic.php?pid=100595#p100595
В существующей конфигурации path - маршрутизируемые, а footway и steps - немаршрутизируемые линии.
Для построения пешеходной конфигурации нужно из файла с описанием немаршрутизируемых линий ways-lines-navitel.yml удалить строки с описанием footway|steps, а в файле описания маршрутизируемых линий (дорог) ways-roads-navitel.yml заменить


    - highway = path

на


    - highway = path|footway|steps

С приоритетом пешеходных дорог перед автомагистралями сложнее - нужно полностью перетряхивать приоритеты в конфигурации.

dedNikifor, НН поддерживает ограничения для конкретных видов транспорта только на отрезках дороги, но не в точках :frowning:

Да, я видел этот пост, но при замене - highway = path на - highway = path|footway|steps
Происходит следующее:

C:\Perl\site\osm2mpnew>osm2mp.pl --navitel --transport=pedestrian,foot --noonewa
y --config=navitel.yml moscow.osm 1>footnew5.mp

—| OSM → MP converter 0.91_2 (c) 2008-2011 liosha, xliosha@gmail.com

Loading configuration… YAML Error: Expected separator ‘—’
Code: YAML_PARSE_ERR_NO_SEPARATOR
Line: 1
Document: 2
at C:/Perl/site/lib/YAML.pm line 36

C:\Perl\site\osm2mpnew>cmd
Microsoft Windows [Version 6.1.7600]
(c) Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

Где рыть?

Хочется видеть на карте границы населенных пунктов: traffic_sign=city_limit :slight_smile:

Хочется. Навител это поддерживает?)

Попробуйте вот эту сборку пешеходной конфигурации: http://code.google.com/p/osm2navitel/downloads/detail?name=osm2navitel.pedestrian.7z&can=2&q=
Приоритеты и скорости дорог в ней полностью убраны, так что НН должен вести по действительно кратчайшему пути.
Ключи --nooneway и --transport=pedestrian добавлены непосредственно в navitel.yml, в командной строке указывать их не нужно.
Запускать как-то так:


osm2mp.pl --config=navitel.yml --osmbbox --defaultcountry=RU --defaultregion=mosobl --output=test.mp test.osm
mp-postprocess-navitel.pl test.mp

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

В условных обозначениях самого НН такого значка нет :frowning:
Speedcam, не?

только не вшивайте его в карту

подоговорите с котярой - он же сделал сервис по формированию файла спидкамов для лежекопов для навитела
думаю, добавить сити_лимит тоже возможно

у меня навител не хочет прокладывать маршрут вот к этому адресу http://www.openstreetmap.org/browse/way/38748964
Екб, Турбинная 7

прокладывает только по прямой. пробовал раз 5-6
помогла только прогладка к точке на самой турбинной перед зданием

никакие access=* ни на воротах, ни на веях не установлены
с чем может быть связан данный баг?

Хочется. Перехочется. :frowning:

Прикольный баг, вернее, наложение двух багов НН.
Во-первых, если у здания явно не отмечены точки подъезда, НН пытается привести не к геометрическому центру здания, а к его первой по порядку точке, т.е. к http://www.openstreetmap.org/browse/node/459461748
Во-вторых, НН пытается привести маршрут не к ближайшей точке дороги, входящей в роутинговый граф, а к ближайшей точке вообще любой ближайшей дороги. В данном случае это http://www.openstreetmap.org/browse/way/97537649
Т.е., если существует footway, расположенный ближе к первой по порядку точке здания, чем любой другой highway, маршрут не проложится.
Лечение - либо вообще убирать footway при конвертации (как сейчас убраны sidewalk’и), либо делать их роутинговыми. Какой из вариантов хуже - черт его знает, оба плохи…

/// Лечение - либо вообще убирать footway при конвертации (как сейчас убраны sidewalk’и), либо делать их роутинговыми. Какой из вариантов хуже - черт его знает, оба плохи…

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

бага проявляется уже не в первый раз, хотя я редко кладу маршруты (в основном, езжу по памяти)
и очень неприятно останавливать машину и искать такой вариант, чтобы маршрут прокладывался корректно

Спасибо! Буду пробовать.

добавьте пожалуйста Турцию на http://osm.fmesh.org/navitel.html

Вы были правы, ошибок много. Ошибки связанные с " несовмещенными и дублирующимися" узлами удалось устранить, а вот с подобными ошибками “Сегмент дороги содержащий только одну различимую вершину (55.791985, 37.587662).
(тип дороги 0x16, надпись '', вершины сегмента №8 - №9)” не знаю как бороться. Подскажете?

Я вот начал тут писать руководство по исправлению ошибок: http://wiki.openstreetmap.org/wiki/RU:Navitel/Исправление_ошибок

Похоже, это дорога из двух точек слилась в одну. Частично решается удалением дубликатов объектов.
Можно попробовать решить проблему другим путем - увеличить битность уровней.
В файле output-polish.yml есть строка


levels = [ 24, 22, 20, 18, 16, 15 ]; -%]

Попробуйте поменять числа на что-нибудь типа “26, 24, 22, 20, 18, 16”. Точность координат увеличится до 0.6 метра, поэтому многие ошибки уйдут. Правда, минимальный зум карты уменьшится вдвое, но на пешеходной карте это, наверное, не так страшно.