OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.

#1 2009-11-06 08:41:27

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

[Статья] Пешеходная навигация - Делаем карту для пешеходов

Многие сталкивались с проблемой выбора навигационной программы - идеального продукта нет. А для пешехода тем более... Поэтому я решил найти универсальный метод применимый почти для любой программы. И этот метод был найден. Метод применим для любых программ где мы можем создать свою карту(Navitel, Garmin, Rusa...)

Проблема пешеходной навигации заключается в том, что навигационные программы строят маршрут по правилам. Включение режима пешехода (где он есть) ситуации не меняет. Большинство программ разрешает пешеходу идти по дороге, но только в направлении движения данной дороги. Т.е. если дорога односторонняя, то и пешеход может идти только в одну сторону. Но если для машины это правильно, то для пешехода нет понятия "встречная".
Пример. Есть дорога, через нее проходит пешеходный переход, нам надо ее перейти. По логике нам надо подойти к пешеходному переходу и перейти дорогу. Но у большинства программ другая логика - если начать маршрут против движения, то навигационная программа проложит маршрут по движению, т.е. сделает крюк до ближайшего разворота...
Если бы включение режима пешехода разрешало движение по встречной, то проблемы пешеходной навигации не было бы.

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

Но тут появляется другая проблема - где взять карту? Если для автомобильной навигации все понятно - новые дороги появляются редко, да и проехать можно не везде, то для пешехода нужна карта с обозначением максимального количества тропинок/пешеходных дорожек/обходных путей, также эта карта должна быть всегда в актуальном состоянии – тропинки появляются и исчезают. В качестве такой карты я использую OpenStreetMap.

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

OSM-файлы с отдельными регионами можно брать здесь:
http://gis-lab.info/projects/osm-export.html (3-й столбец(osm xml))
Данные обновляются ежедневно. Т.е. если вы вечером внесли изменения в карту, то утром уже будет файл с вашими изменениями.

Для преобразования карты в польский формат(mp) есть скрипт на перле osm2mp.pl написанный liosha. Также есть его исполняемая версия(exe), но на момент написания статьи была только старая версия. При использовании exe пропустите раздел подготовка(Perl).

Подготовка(Perl):
1) Скачиваем и устанавливаем ActivePerl - http://activestate.com/Products/activeperl/index.mhtml
2) Дальше требуется установить некоторые модули, для этого запускаете Perl Package Manager
3) Жмете Ctrl+1
4) Дальше нам нужны следующие пакеты: Template-toolkit, Getopt-Long, Text-Unidecode, List-MoreUtils, Math-Polygon, Math-Geometry-Planar-GPC-Polygon. Часть из них уже установлена. Выбираете пакеты из списка, кликаете правой кнопкой мыши по пакету и смотрите - если есть пункт начинающийся на "Install", то выбираете его.
5) После того как отметите все необходимые пакеты, нажмите Ctrl+Enter (или File->Run Marked Actions)
6) Нажмите yes если появится вопрос об установке пакетов.
7) Закройте Perl Package Manager
8) Зайдите в командную строку и введите perl -MCPAN -e "install Math::Polygon::Tree"
9) Дальше начнется долгий процесс установки модуля Math-Polygon-Tree, дождитесь окончания
10) Perl и все необходимые библиотеки установлены.

Рассмотрим изготовление карты Воронежской области для программы Навител(применимо и для других программ с некоторыми изменениями(частично описаны ниже)):

Если вы используете perl-версию, то сначала сделайте подготовку(Perl) - описана выше

I) Создание MP-карты (польский формат)

1) Создаем папку в корне диска, называем ее MapNav (Название может быть любое, но без русских букв. В нашем случае D:\MapNav)
2) Скачиваем Нужную область (voronezh.osm.bz2)
2) Распаковываем любым архиватором, получаем файл с областью (voronezh.osm)
3) Кладем файл в папку из п.1 (D:\MapNav)
4) загружаем osm2mp.pl (http://osm2mp.googlecode.com/svn/trunk/osm2mp/osm2mp.pl) и кладем в туже папку
5) загружаем header.tpl (http://osm2mp.googlecode.com/svn/trunk/ … header.tpl) и кладем в туже папку
6) Далее берем poi.cfg для навитела (http://maps-by.googlecode.com/hg/config … el/poi.cfg) и кладем в туже папку
8) Далее берем poly.cfg для навитела (http://maps-by.googlecode.com/hg/config … l/poly.cfg) и кладем в туже папку
9) Редактируем poly.cfg:
Открываем WordPad-ом и меняем все 0x48 на 0x16 - На момент написания статьи в файле неправильно описаны пешеходные дорожки. Затем превращаем односторонние дороги в двусторонние - находим что-то похожее на RouteParams=speed,class,oneway,toll,emergency,delivery,car,bus,taxi,foot,bike,truck, после чего идет список дорог, нас интересует последние последовательности цифр, например:
highway motorway r 0x01,2 0 4 6,4,1,0,0,0,0,0,0,0,0,0
В этом случае нас интересует 6,4,1,0,0,0,0,0,0,0,0,0
Нужно изменить 3-ю цифру(в примере выше - 1) на 0 Проделываем это для всех дорог(около 20 дорог из них односторонних(3-я цифра равна 1) около 5). Сохраняем изменения.
10) Правим osm2mp.pl
Открываем в WordPad, ищем там $rp[2] = $yesno{$waytag{'oneway'}}  заменяем на $rp[2] = 0
Сохраняем. Это нужно для превращения односторонних дорог в двусторонние дороги.
11) Теперь запускаем osm2mp.pl со следующими параметрами:
osm2mp.pl --norestrictions --navitel voronezh.osm > foot.mp
В данном случае voronezh.osm - osm-файл области, а foot.mp - имя файла для генерируемой карты.
12) Проверим правильность редактирования фала poly.cfg, для этого откроем получившийся файл из предыдущего пункта(foot.mp) И попробуем найти там DirIndicator, если его нет в файле, то все дороги двусторонние. Если есть, то заново начинаем с пункта 9. Далее попробуем найти 0x48 если вдруг они остались, то их нужно заменить на 0x16
13) Теперь у нас есть карта в польском формате для Навитела.

ОТЛИЧИЯ ДЛЯ ДРУГИХ ПРОГРАММ:
1) В пункте 11 не нужен параметр --navitel
Запуск osm2mp.pl --norestrictions voronezh.osm > foot.mp
2) Требуются другие Файлы poly.cfg и poi.cfg
Для Гармин можно взять тут:
http://osm2mp.googlecode.com/svn/trunk/osm2mp/poi.cfg
http://osm2mp.googlecode.com/svn/trunk/osm2mp/poly.cfg


II) Изготовление карты из MP

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

1) Скачиваем GPSMapEdit (http://geopainting.com/ru/)
2) Открываем в нем нашу карту foot.mp
3) Делаем экспорт карты в формат Navitel 3.2.6 (File->Export->Navitel 3.2.6)
4) Теперь у нас есть пешеходная карта для Навител 3.2.6


III) Загружаем карту в навигатор и можно использовать.


Это первая версия статьи, в дальнейшем она будет поправлена и дополнена. Автором статьи являюсь я(Ntkiller). При копировании статьи ссылка на автора обязательна. Если есть какие-либо вопросы/предложения - пишите, постараюсь ответить.

По возможности вместе со статьей выложу готовые osm2mp.pl, poly.cfg

Offline

#2 2009-11-06 08:53:46

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,446
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Стоит сказать, что эта статья - про пешеходную карту для навитела

Что касается гарминов, для них конфиги изначально рассчитаны в том числе и на пешеходов.
Так что лишних телодвижений не требуется.
* в гарминах односторонность движения к пешеходам НЕ относится
* рестрикшены вообще на пешеходов распространяются, но osm2mp их для них отключает.

Кроме того, --norestrictions убьёт информацию о воротах/калитках, и маршрут пойдёт через закрытые территории

Offline

#3 2009-11-06 09:13:24

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

liosha wrote:

Стоит сказать, что эта статья - про пешеходную карту для навитела

В статье описан принцип создания карты. Перепробовал несколько разных програм(Навител, Старая РУСА)
Там роутинг был именно такой. Гармин не пробовал. В следующей версии уточню.

liosha wrote:

Что касается гарминов, для них конфиги изначально рассчитаны в том числе и на пешеходов.
Так что лишних телодвижений не требуется.
* в гарминах односторонность движения к пешеходам НЕ относится
* рестрикшены вообще на пешеходов распространяются, но osm2mp их для них отключает.

Кроме того, --norestrictions убьёт информацию о воротах/калитках, и маршрут пойдёт через закрытые территории

Спасибо за информацию. Во второй версии поправлю. Уберу --norestrictions и поправлю про гармин.

Last edited by Ntkiller (2009-11-06 09:13:47)

Offline

#4 2009-11-06 09:19:10

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,690
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

а restriction распространяется на пешеходов? вот смешно будет, если на перекрёстке пешеходу поворот налево будет запрещён smile

Offline

#5 2009-11-06 09:27:30

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Alexandr Zeinalov wrote:

а restriction распространяется на пешеходов? вот смешно будет, если на перекрёстке пешеходу поворот налево будет запрещён smile

А если программа не имеет режим пешеход? Она будет строить маршрут как машине - с запретами...

Offline

#6 2009-11-06 09:32:41

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,446
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Alexandr Zeinalov, в гармине для рестрикшена указывается, на какие типы транспорта он распространяется. Сейчас relation=restriction на пешеходов не переносится.
В навителе, как я понял, рестрикшен действует на всех.

Offline

#7 2009-11-06 09:32:58

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,690
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Это я как раз к вопросу о --norestrictions

Offline

#8 2009-11-06 09:59:12

Calibrator
Member
From: Интернет
Registered: 2009-08-19
Posts: 892

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Ntkiller  У тебя хорошие инструкции! Чтобы они не съехали в конец форума и не затерялись где-то на его дне - советую перенести их на странички вики. А ссылочки на них мы уж понатыкаем...

Last edited by Calibrator (2009-11-06 10:00:14)

Offline

#9 2009-11-06 10:30:05

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Calibrator wrote:

Ntkiller  У тебя хорошие инструкции! Чтобы они не съехали в конец форума и не затерялись где-то на его дне - советую перенести их на странички вики. А ссылочки на них мы уж понатыкаем...

В вики будет перенесено когда будет вторая-третья версия - сначала баги отловим)

Offline

#10 2009-11-06 11:23:07

dimuzz
Member
From: Екатеринбург
Registered: 2009-09-10
Posts: 1,843

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Ntkiller, вам просто необходимо поправить в вики раздел про установку ActivePerl в статье http://wiki.openstreetmap.org/wiki/RU:Osm2mp :-)
Ну и ждем отдельной статьи о пешей навигации в Навител!

Offline

#11 2009-11-07 08:38:41

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

ВТОРАЯ ВЕРСИЯ

Многие сталкивались с проблемой выбора навигационной программы - идеального продукта нет. А для пешехода тем более... Поэтому я решил найти универсальный метод применимый почти для любой программы. И этот метод был найден. Метод применим для любых программ где мы можем создать свою карту(Navitel, Rusa...)

Проблема пешеходной навигации заключается в том, что навигационные программы строят маршрут по правилам. Включение режима пешехода (где он есть) ситуации не меняет(Исключение Garmin). Большинство программ разрешает пешеходу идти по дороге, но только в направлении движения данной дороги. Т.е. если дорога односторонняя, то и пешеход может идти только в одну сторону. Но если для машины это правильно, то для пешехода нет понятия "встречная".
Пример. Есть дорога, через нее проходит пешеходный переход, нам надо ее перейти. По логике нам надо подойти к пешеходному переходу и перейти дорогу. Но у большинства программ другая логика - если начать маршрут против движения, то навигационная программа проложит маршрут по движению, т.е. сделает крюк до ближайшего разворота...
Если бы включение режима пешехода разрешало движение по встречной, то проблемы пешеходной навигации не было бы.

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

Но тут появляется другая проблема - где взять карту? Если для автомобильной навигации все понятно - новые дороги появляются редко, да и проехать можно не везде, то для пешехода нужна карта с обозначением максимального количества тропинок/пешеходных дорожек/обходных путей, также эта карта должна быть всегда в актуальном состоянии – тропинки появляются и исчезают. В качестве такой карты я использую OpenStreetMap.

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

OSM-файлы с отдельными регионами можно брать здесь:
http://gis-lab.info/projects/osm-export.html (3-й столбец(osm xml))
Данные обновляются ежедневно. Т.е. если вы вечером внесли изменения в карту, то утром уже будет файл с вашими изменениями.

Для преобразования карты в польский формат(mp) есть скрипт на перле osm2mp.pl написанный liosha. Также есть его исполняемая версия(exe), но на момент написания статьи была только старая версия. При использовании exe пропустите раздел Установка ActivePerl

Про установку ActivePerl написано здесь http://wiki.openstreetmap.org/wiki/RU:Osm2mp
Установка ActivePerl:
Если вы собираетесь использовать Perl-версию программы, то необходимо установить ActivePerl
1. Скачиваем и устанавливаем ActivePerl - http://activestate.com/Products/activeperl/index.mhtml
2. Дальше требуется установить некоторые модули, для этого запускаете Perl Package Manager
3. Жмете Ctrl+1
4. Дальше нам нужны следующие пакеты: Template-toolkit, Getopt-Long, Text-Unidecode, List-MoreUtils, Math-Polygon, Math-Geometry-Planar-GPC-Polygon. Часть из них уже установлена. Выбираете пакеты из списка, кликаете правой кнопкой мыши по пакету и смотрите - если есть пункт начинающийся на "Install", то выбираете его.
5. После того как отметите все необходимые пакеты, нажмите Ctrl+Enter (или File->Run Marked Actions)
6. Нажмите yes если появится вопрос об установке пакетов.
7. Закройте Perl Package Manager
8. Зайдите в командную строку и введите perl -MCPAN -e "install Math::Polygon::Tree"
9. Дальше начнется долгий процесс установки модуля Math-Polygon-Tree, дождитесь окончания
10. Perl и все необходимые библиотеки установлены.

Рассмотрим изготовление карты Воронежской области для программы Навител(применимо и для других программ с некоторыми изменениями(частично описаны ниже)):

Если вы используете perl-версию, то сначала установите ActivePerl – описание выше.

I) Создание MP-карты (польский формат)

1) Создаем папку в корне диска, называем ее MapNav (Название может быть любое, но без русских букв. В нашем случае D:\MapNav)
2) Скачиваем Нужную область (voronezh.osm.bz2)
2) Распаковываем любым архиватором, получаем файл с областью (voronezh.osm)
3) Кладем файл в папку из п.1 (D:\MapNav)
4) загружаем osm2mp.pl (http://osm2mp.googlecode.com/svn/trunk/osm2mp/osm2mp.pl) и кладем в туже папку
5) загружаем header.tpl (http://osm2mp.googlecode.com/svn/trunk/ … header.tpl) и кладем в туже папку
6) Далее берем poi.cfg для навитела (http://maps-by.googlecode.com/hg/config … el/poi.cfg) и кладем в туже папку
8) Далее берем poly.cfg для навитела (http://maps-by.googlecode.com/hg/config … l/poly.cfg) и кладем в туже папку
9) Редактируем poly.cfg:
Открываем WordPad-ом и меняем все 0x48 на 0x16 - На момент написания статьи в файле неправильно описаны пешеходные дорожки. Затем превращаем односторонние дороги в двусторонние - находим что-то похожее на RouteParams=speed,class,oneway,toll,emergency,delivery,car,bus,taxi,foot,bike,truck, после чего идет список дорог, нас интересует последние последовательности цифр, например:
highway motorway r 0x01,2 0 4 6,4,1,0,0,0,0,0,0,0,0,0
В этом случае нас интересует 6,4,1,0,0,0,0,0,0,0,0,0
Нужно изменить 3-ю цифру(в примере выше - 1) на 0 Проделываем это для всех дорог(около 20 дорог из них односторонних(3-я цифра равна 1) около 5). Сохраняем изменения.
10) Теперь запускаем osm2mp.pl со следующими параметрами:
osm2mp.pl –norestrictions --nooneway  --navitel voronezh.osm > foot.mp
В данном случае voronezh.osm - osm-файл области, а foot.mp - имя файла для генерируемой карты.
11) Проверим правильность редактирования фала poly.cfg, для этого откроем получившийся файл из предыдущего пункта(foot.mp) И попробуем найти там DirIndicator, если его нет в файле, то все дороги двусторонние. Если есть, то заново начинаем с пункта 9. Далее попробуем найти 0x48 если вдруг они остались, то их нужно заменить на 0x16
12) Теперь у нас есть карта в польском формате для Навитела.

ОТЛИЧИЯ ДЛЯ ДРУГИХ ПРОГРАММ:
1) В пункте 11 не нужен параметр --navitel
Запуск osm2mp.pl --norestrictions –nooneway voronezh.osm > foot.mp
2) Требуются другие Файлы poly.cfg и poi.cfg
Для Гармин можно взять тут:
http://osm2mp.googlecode.com/svn/trunk/osm2mp/poi.cfg
http://osm2mp.googlecode.com/svn/trunk/osm2mp/poly.cfg


II) Изготовление карты из MP

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

1) Скачиваем GPSMapEdit (http://geopainting.com/ru/)
2) Открываем в нем нашу карту foot.mp
3) Делаем экспорт карты в формат Navitel 3.2.6 (File->Export->Navitel 3.2.6)
4) Теперь у нас есть пешеходная карта для Навител 3.2.6


III) Загружаем карту в навигатор и можно использовать.


Это вторая версия статьи, в дальнейшем она будет поправлена и дополнена. Автором статьи являюсь я(Ntkiller). При копировании статьи ссылка на автора обязательна. Если есть какие-либо вопросы/предложения - пишите, постараюсь ответить.

По возможности вместе со статьей выложу готовые osm2mp.pl, poly.cfg

Offline

#12 2009-11-07 08:40:39

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Кто пробовал этот метод для навитела? Не могу понять в чем проблема - поиск не хочет работать...

Offline

#13 2009-11-07 09:22:12

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Выложил готовые poi.cfg и poly.cfg на GoogleCode. Скоро сделаю статью в вики.

ТРЕТЬЯ ВЕРСИЯ

Многие сталкивались с проблемой выбора навигационной программы - идеального продукта нет. А для пешехода тем более... Поэтому я решил найти универсальный метод применимый почти для любой программы. И этот метод был найден. Метод применим для любых программ где мы можем создать свою карту(Navitel, Rusa...)

Проблема пешеходной навигации заключается в том, что навигационные программы строят маршрут по правилам. Включение режима пешехода (где он есть) ситуации не меняет(Исключение Garmin). Большинство программ разрешает пешеходу идти по дороге, но только в направлении движения данной дороги. Т.е. если дорога односторонняя, то и пешеход может идти только в одну сторону. Но если для машины это правильно, то для пешехода нет понятия "встречная".
Пример. Есть дорога, через нее проходит пешеходный переход, нам надо ее перейти. По логике нам надо подойти к пешеходному переходу и перейти дорогу. Но у большинства программ другая логика - если начать маршрут против движения, то навигационная программа проложит маршрут по движению, т.е. сделает крюк до ближайшего разворота...
Если бы включение режима пешехода разрешало движение по встречной, то проблемы пешеходной навигации не было бы.

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

Но тут появляется другая проблема - где взять карту? Если для автомобильной навигации все понятно - новые дороги появляются редко, да и проехать можно не везде, то для пешехода нужна карта с обозначением максимального количества тропинок/пешеходных дорожек/обходных путей, также эта карта должна быть всегда в актуальном состоянии – тропинки появляются и исчезают. В качестве такой карты я использую OpenStreetMap.

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

OSM-файлы с отдельными регионами можно брать здесь:
http://gis-lab.info/projects/osm-export.html (3-й столбец(osm xml))
Данные обновляются ежедневно. Т.е. если вы вечером внесли изменения в карту, то утром уже будет файл с вашими изменениями.

Для преобразования карты в польский формат(mp) есть скрипт на перле osm2mp.pl написанный liosha. Также есть его исполняемая версия(exe), но на момент написания статьи была только старая версия. При использовании exe пропустите раздел Установка ActivePerl

Про установку ActivePerl написано здесь http://wiki.openstreetmap.org/wiki/RU:Osm2mp
Установка ActivePerl:
Если вы собираетесь использовать Perl-версию программы, то необходимо установить ActivePerl
1. Скачиваем и устанавливаем ActivePerl - http://activestate.com/Products/activeperl/index.mhtml
2. Дальше требуется установить некоторые модули, для этого запускаете Perl Package Manager
3. Жмете Ctrl+1
4. Дальше нам нужны следующие пакеты: Template-toolkit, Getopt-Long, Text-Unidecode, List-MoreUtils, Math-Polygon, Math-Geometry-Planar-GPC-Polygon. Часть из них уже установлена. Выбираете пакеты из списка, кликаете правой кнопкой мыши по пакету и смотрите - если есть пункт начинающийся на "Install", то выбираете его.
5. После того как отметите все необходимые пакеты, нажмите Ctrl+Enter (или File->Run Marked Actions)
6. Нажмите yes если появится вопрос об установке пакетов.
7. Закройте Perl Package Manager
8. Зайдите в командную строку и введите perl -MCPAN -e "install Math::Polygon::Tree"
9. Дальше начнется долгий процесс установки модуля Math-Polygon-Tree, дождитесь окончания
10. Perl и все необходимые библиотеки установлены.

Рассмотрим изготовление карты Воронежской области для программы Навител(применимо и для других программ с некоторыми изменениями(частично описаны ниже)):

Если вы используете perl-версию, то сначала установите ActivePerl – описание выше.

I) Создание MP-карты (польский формат)

1) Создаем папку в корне диска, называем ее MapNav (Название может быть любое, но без русских букв. В нашем случае D:\MapNav)
2) Скачиваем Нужную область (voronezh.osm.bz2)
2) Распаковываем любым архиватором, получаем файл с областью (voronezh.osm)
3) Кладем файл в папку из п.1 (D:\MapNav)
4) загружаем osm2mp.pl (http://osm2mp.googlecode.com/svn/trunk/osm2mp/osm2mp.pl) и кладем в туже папку
5) загружаем header.tpl (http://osm2mp.googlecode.com/svn/trunk/ … header.tpl) и кладем в туже папку
6) Далее берем poi.cfg для навитела (http://osm2foot.googlecode.com/files/poi.cfg) и кладем в туже папку
8) Далее берем poly.cfg для навитела (http://osm2foot.googlecode.com/files/poly.cfg) и кладем в туже папку
9) Теперь запускаем osm2mp.pl со следующими параметрами:
osm2mp.pl –norestrictions --nooneway  --navitel voronezh.osm > foot.mp
В данном случае voronezh.osm - osm-файл области, а foot.mp - имя файла для генерируемой карты.
10) Теперь у нас есть карта в польском формате для Навитела.

ОТЛИЧИЯ ДЛЯ ДРУГИХ ПРОГРАММ:
1) В пункте 9 не нужен параметр --navitel
Запуск osm2mp.pl --norestrictions –nooneway voronezh.osm > foot.mp
2) Требуются другие Файлы poly.cfg и poi.cfg
Для Гармин можно взять тут:
http://osm2mp.googlecode.com/svn/trunk/osm2mp/poi.cfg
http://osm2mp.googlecode.com/svn/trunk/osm2mp/poly.cfg


II) Изготовление карты из MP

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

1) Скачиваем GPSMapEdit (http://geopainting.com/ru/)
2) Открываем в нем нашу карту foot.mp
3) Делаем экспорт карты в формат Navitel 3.2.6 (File->Export->Navitel 3.2.6)
4) Теперь у нас есть пешеходная карта для Навител 3.2.6


III) Загружаем карту в навигатор и можно использовать.


Это третья  версия статьи, в дальнейшем она будет поправлена и дополнена. Автором статьи являюсь я(Ntkiller). При копировании статьи ссылка на автора обязательна. Если есть какие-либо вопросы/предложения - пишите, постараюсь ответить.

Offline

#14 2009-11-07 17:39:27

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

С глюком поиска разобрался - надо было проиндексировать карту.

Offline

#15 2009-11-07 17:45:43

woidrick
Member
Registered: 2009-10-03
Posts: 27

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

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

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

3-е транспортное - там где по улицам оно идёт - можно, где на эстакадах с риском для собственной задницы.

Да и в протяжённых туннелях нельзя.

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

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

В принципе, это можно решать foot=no

И как бы не понятно как быть с тротуарами, на радостях многие бросятся их рисовать, а по технологии навигатора будет что-то вроде "дойдите до безымянного вея через 100 метров, пройдите по безымянному вею направо 400 метров" и подобная хрень.

Offline

#16 2009-11-07 18:47:05

Ntkiller
Member
Registered: 2009-11-06
Posts: 21

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Самому интересен вопрос тротуаров - рисовать их или нет? Есть общепринитая практика?

Offline

#17 2009-11-07 18:51:24

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,446
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

если нет необходимости - не рисовать.

Offline

#18 2009-11-07 22:03:38

Komяpa
Member
From: Minsk
Registered: 2009-04-14
Posts: 1,320
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Рисовать, если есть желание. Если нет - не рисовать рисовать не тротуары smile
Я рисовал, рисую и рисовать буду smile
http://www.openstreetmap.org/?lat=53.86 … rs=B000FTF


world processing is what we do.
[OSMF BY Team] [http://komzpa.net/] [jabber: komzpa@gmail.com] [mobile/SMS: +375257407159]

Offline

#19 2009-11-08 09:17:50

dimuzz
Member
From: Екатеринбург
Registered: 2009-09-10
Posts: 1,843

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Мое мнение - лучше не рисовать тротуары, параллельные улицам.
Во-первых, повышенная погрешность определения координат в городе приводит к тому, что навигатор может определить свое положение как на проезжей части, так и на тротуаре (который может быть двусторонним вдоль односторонки, без запрета поворотов и т.п.).
В-вторых, движение "по улице" для пешехода все-таки означает движение "по тротуару вдоль улицы".
А вот тротуары и дорожки, которые позволяют пешеходу "срезать углы", рисовать можно и нужно, причем соединяя их с дорогами, иначе для пешеходной маршрутизации они бесполезны, например: http://osm.org/go/0t2exO4_0--

Offline

#20 2009-11-08 11:28:29

Komяpa
Member
From: Minsk
Registered: 2009-04-14
Posts: 1,320
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Если навигационная программа пытается вести человека в режиме автонавигации по пешеходным дорогам - это, извините, нехорошая программа. И править надо именно ее. Тротуар возле дороги есть? есть. Если рендерер в виде навигатора не умеет с ними правильно обращаться - это проблема рендерера, не базы данных. А для рендерера мы не рисуем smile


world processing is what we do.
[OSMF BY Team] [http://komzpa.net/] [jabber: komzpa@gmail.com] [mobile/SMS: +375257407159]

Offline

#21 2009-11-08 11:34:59

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,446
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Komяpa, а ты обозначаешь ВСЕ места, где с тротуара можно сойти на дорогу?

Offline

#22 2009-11-08 12:18:03

Komяpa
Member
From: Minsk
Registered: 2009-04-14
Posts: 1,320
Website

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Вопрос аналогичен "а вы обозначаете ВСЕ места, где можно проехать на автомобиле?".

Если возможность сойти на дорогу есть - обозначаю. Как и highway=crossing на зебрах.

Если ради этого придётся идти по нетоптанному газону... не обозначаю smile

Даже если просто регулярно "втыкать" тротуар в дворовые проезды (про которые тоже забывать не стоит) - роутинг получается вполне приемлимый.


world processing is what we do.
[OSMF BY Team] [http://komzpa.net/] [jabber: komzpa@gmail.com] [mobile/SMS: +375257407159]

Offline

#23 2009-11-09 05:39:58

dimuzz
Member
From: Екатеринбург
Registered: 2009-09-10
Posts: 1,843

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Komяpa wrote:

Если навигационная программа пытается вести человека в режиме автонавигации по пешеходным дорогам - это, извините, нехорошая программа. И править надо именно ее. Тротуар возле дороги есть? есть. Если рендерер в виде навигатора не умеет с ними правильно обращаться - это проблема рендерера, не базы данных. А для рендерера мы не рисуем smile

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

Offline

#24 2009-11-09 06:15:52

Ilis
Member
From: Екатеринбург
Registered: 2009-05-24
Posts: 5,970

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

dimuzz wrote:

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

То, что навигатор привязывает себя к дороге или тротуару -- совершенно не повод не рисовать тротуары. Навигатор в идеале должен понимать, где он находится (в зависимости от режима), либо спрашивать. Разнесённость дорог -- тоже не показатель. Дороги могут быть разнесены на 10 метров, а навигатор ошибаться на 30. Рисовать надо всё, что есть. Если не лень, конечно smile

Offline

#25 2009-11-09 06:24:08

dimuzz
Member
From: Екатеринбург
Registered: 2009-09-10
Posts: 1,843

Re: [Статья] Пешеходная навигация - Делаем карту для пешеходов

Это уже будет карта для сферического коня в вакууме smile

Offline

Board footer

Powered by FluxBB