You are not logged in.
- Topics: Active | Unanswered
Announcement
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***
#3876 2012-02-25 09:24:23
- SegMar
- Member
- From: Grodno
- Registered: 2009-08-17
- Posts: 31
Re: Конвертация OSM в Navitel
SegMar wrote:
1. А в навителе могут отображаться отдельно стоящие деревья?
Например стоит в поле дуб, я его нанес на карту (natural=tree) и он отображается зеленой точкой на карте OSM, а в навителе нет.
Они и отображаются, как "Отдельно стоящее дерево (0xf404, точка)", видны на масштабах до 120 м при средней детализации.
Поставил максимальную детализацию, приблизил до максимума - дерева нет.
Offline
#3877 2012-02-25 09:26:51
- SegMar
- Member
- From: Grodno
- Registered: 2009-08-17
- Posts: 31
Re: Конвертация OSM в Navitel
Обновил карту Беларуси
Спасибо, сча посмотрим. Когда ты только успел?
Offline
#3878 2012-02-25 09:30:20
- borism346
- Member

- From: Minsk
- Registered: 2008-11-12
- Posts: 911
Re: Конвертация OSM в Navitel
SegMar, ну раз просили... ![]()
Offline
#3879 2012-02-25 09:37:24
- dimuzz
- Member
- From: Екатеринбург
- Registered: 2009-09-10
- Posts: 1,843
Re: Конвертация OSM в Navitel
Может быть, так настроен фильтр POI?
Навскидку, вот тут в НН 3.2.6 отлично видны все деревья.
Offline
#3880 2012-02-25 09:43:55
- borism346
- Member

- From: Minsk
- Registered: 2008-11-12
- Posts: 911
Re: Конвертация OSM в Navitel
C отдельными деревьями все понятно. Просто dimuzz говорил про российские конфиги, а я конвертил с белорусскими, которые tibman делал. Оказывается у него деревья были закомменчены. Снял пометку. Теперь будут, но уже в следующей сборке
.
Offline
#3881 2012-02-25 15:53:22
- dedNikifor
- Member

- From: Белгород
- Registered: 2009-09-11
- Posts: 3,419
Re: Конвертация OSM в Navitel
К примеру какая нибудь территория водозабора или очистных сооружений нарисована в виде площади и имеет название, но в поиске его так не найти.
Если еще поставить точку с таким названием, то в поиске находит, но тогда на карте вылазит 2 одинаковых названия.
Остается только не указывать название в площади.
а вам еще никто не говорил, что рисовать под навигатор - один из смертных грехов в осм?
Offline
#3882 2012-02-25 16:06:52
- Zkir
- Member

- From: Хрустальная Москва
- Registered: 2009-02-21
- Posts: 6,110
Re: Конвертация OSM в Navitel
Коллеги, отпишитесь плиз здесь, кто у вас старшой.
если есть сомнения, можете внутренние выборы провести![]()
Истинные слова не не приятны, приятные слова не истинны.
True words are unpleasant; pleasant words are untrue.
Offline
#3883 2012-02-27 15:33:09
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертация OSM в Navitel
Господа подскажите, что за ошибка??
Processing ways...
"\x{d604}" does not map to cp1251 at osm2mp.pl line 3263, <$_[...]> line 10901048.
"\x{b300}" does not map to cp1251 at osm2mp.pl line 3263, <$_[...]> line 10901048.
и что сделать? спасибо!
Offline
#3884 2012-02-27 23:34:31
- Paspartu
- Member
- From: Владивосток
- Registered: 2011-03-12
- Posts: 318
Re: Конвертация OSM в Navitel
Господа подскажите, что за ошибка??
Processing ways...
"\x{d604}" does not map to cp1251 at osm2mp.pl line 3263, <$_[...]> line 10901048.
"\x{b300}" does not map to cp1251 at osm2mp.pl line 3263, <$_[...]> line 10901048.и что сделать? спасибо!
Насколько помню, ничего страшного. Просто эти символы не были найдены в cp1251 и соответственно не могут быть им интерпретированы. Могу посоветовать использовать --namelist label=name:ru,name
Если не прав, поправьте.
Offline
#3885 2012-02-28 14:29:11
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертация OSM в Navitel
Ильин Роман wrote:Господа подскажите, что за ошибка??
Processing ways...
"\x{d604}" does not map to cp1251 at osm2mp.pl line 3263, <$_[...]> line 10901048.
"\x{b300}" does not map to cp1251 at osm2mp.pl line 3263, <$_[...]> line 10901048.и что сделать? спасибо!
Насколько помню, ничего страшного. Просто эти символы не были найдены в cp1251 и соответственно не могут быть им интерпретированы. Могу посоветовать использовать --namelist label=name:ru,name
Если не прав, поправьте.
спасибо, но не помогло. тоже самое в том же месте
Offline
#3886 2012-02-28 14:34:37
- Paspartu
- Member
- From: Владивосток
- Registered: 2011-03-12
- Posts: 318
Re: Конвертация OSM в Navitel
А какой регион конвертируете? Наверное, который граничит с другой страной?
Offline
#3887 2012-02-28 15:23:46
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертация OSM в Navitel
А какой регион конвертируете? Наверное, который граничит с другой страной?
нет, Архангeльская область
у меня cp нигде не прописана...
Last edited by Ильин Роман (2012-02-28 15:24:28)
Offline
#3888 2012-02-28 16:10:22
- Paspartu
- Member
- From: Владивосток
- Registered: 2011-03-12
- Posts: 318
Re: Конвертация OSM в Navitel
Конвертация osm в navitel с отдельным файлом роутинга на примере Приморского края. О пользе отдельного файла роутинга можно почитать здесь.
1. Устанавливаем Active Perl со всеми необходимыми модулями, как описано в http://wiki.openstreetmap.org/wiki/RU:O … B5_Windows
Скачиваем GPSMapEdit. Если выбрали версию без инсталлятора, то разархивируем в любое место и запускаем один раз mapedit.exe, что бы прописались пути в реестре.
2. создаём папку, например prim, и складируем все файлы в ней
http://osm2mp.googlecode.com/svn/trunk/getbound.pl
http://osm2mp.googlecode.com/svn/trunk/osm2mp/osm2mp.pl
http://osm2mp.googlecode.com/svn/trunk/ … polish.yml
http://osm2navitel.googlecode.com/svn/trunk/navitel.yml
http://osm2navitel.googlecode.com/svn/t … avitel.yml
http://osm2navitel.googlecode.com/svn/t … avitel.yml
http://osm2navitel.googlecode.com/svn/t … avitel.yml
http://osm2navitel.googlecode.com/svn/t … avitel.yml
http://osm2navitel.googlecode.com/svn/t … navitel.pl
http://osm2navitel.googlecode.com/svn/t … avitel.txt
+
http://osm2mp.googlecode.com/svn/trunk/ … p1251.cmap
Что бы каждый раз не копировать эти файлы вручную (при их обновлении на сервере), можно использовать TortoiseSVN
Также рекомендую немного отредактировать getbound.pl: найти в нём строчку $ua->timeout( 60 ); и поменять её на $ua->timeout( 300); так получение poly файла будет более стабильным.
3. В созданной нами папке prim
3.1 создаём файл main.bat с содержимым
del *.bak
del *.htm
Start /Wait wget.bat
Start /Wait size.vbs
If Exist log.txt Exit /B
Start /Wait 7z.bat
Start /Wait getbound.bat
Start /Wait poly.vbs
Start /Wait osm2mp.bat
Start /Wait osm2mp_rt.bat
Start /Wait mp-postprocess-navitel.bat
Start /Wait ConvertToNM2.vbs
exit3.2 создаём файл wget.bat с содержимым
wget -N http://data.gis-lab.info/osm_dump/dump/latest/RU-PRI.osm.bz2 -olog.txt
exitкачаем http://www.interlog.com/~tcharron/wgetw … binary.zip из архива нам нужен wget.exe, который разархивируем в ту же папку prim
данный батник закачивает последний osm файл нужного нам региона, причём если файл не изменился, то он его закачивать не будет.
3.3 создаём файл size.vbs с содержимым
Dim objFso
Dim f
Set objFso = CreateObject("Scripting.FileSystemObject")
Set f = objFso.GetFile("log.txt")
if f.size > 600 then f.deleteданный скрипт нужен для автоматизации, т.е. если файл не изменился то и конвертировать ничего не надо. Размер в 600 байт выбран методом "научного тыка", т.е. wget в случае закачки создаст log.txt размером больше 600 байт, если не закачал (файл не изменился), то файл log.txt будет размером меньше 600 байт.
3.4 создаём файл 7z.bat с содержимым
7za e prim.osm.bz2 -y
exitкачаем http://downloads.sourceforge.net/sevenzip/7za920.zip, 7za.exe из архива также разархивируем в папку prim.
3.5 создаём файл getbound.bat с содержимым
getbound.pl prim > prim.poly
exitОчень рекомендую запустить данный батник и проследить, что бы poly файл создался.
3.6 Очень часто бывает, что poly файл в силу разных причин не создаётся (поломали релейшн, нет связи с osm и т.д. и т.п.) поэтому у меня в запасе есть более старый poly файл.
создаём файл poly.vbs с содержимым
Dim objFso
Dim f
Const OverwriteExisting = True
Set objFso = CreateObject("Scripting.FileSystemObject")
Set f = objFso.GetFile("prim.poly")
if f.size <> 0 then
objFSO.CopyFile "c:\gps\update\OSM\prim\prim.poly" , "c:\gps\update\OSM\POLY\", OverwriteExisting
Else
objFSO.CopyFile "c:\gps\update\OSM\POLY\prim.poly" , "c:\gps\update\OSM\prim\", OverwriteExisting
end ifТ.е. когда запустили getbound.bat и получили рабочий poly файл то сохраняем его в папке poly. И если при конвертации закачка poly файла будет неудачной то он будет взят из папки poly, а если закачка будет удачной то он там сохранится как более свежая версия.
3.7 файл osm2mp.bat, с ним всё более интересно. Можно не извращаться и создать его в таком виде
osm2mp.pl --config=navitel.yml --textfilter PrepareCP1251 --namelist label=name:ru,name --defaultcountry=RU --defaultregion="prim" --bpoly=prim.poly RU-PRI.osm > RU-PRI.mp
exitМожно же немного поизвращаться и создать в виде
chcp 65001
osm2mp.pl --config=navitel.yml --textfilter PrepareCP1251 --namelist label=name:ru,name --defaultcountry=RU --defaultregion="Приморский край" --bpoly=prim.poly RU-PRI.osm > RU-PRI.mp
exitно...
а. его нужно сохранить, например с помощью программы Notepad++ в кодировке utf-8
б. например с помощью программы XVI32 удалить первые 3 hex-символа (EF BB BF), зато потом можно использовать в --defaultregion любые символы, чем я и пользовался когда конвертировал Украину.
3.8 создаём файл osm2mp_rt.bat с содержимым
osm2mp.pl --config=navitel-rt.yml --nobackground --bpoly=prim.poly RU-PRI.osm > RU-PRI_rt.mp
exit3.9 создаём файл mp-postprocess-navitel.bat с содержимым
mp-postprocess-navitel.pl RU-PRI.mp --killrouting --noshorten
mp-postprocess-navitel.pl RU-PRI_rt.mp --fixrouting --noshorten
exitЕсли будут ошибки роутинга, то постпроцессор попытается их исправить и запишет их в файл RU-PRI_rt.mp.err.htm. Если же постпроцессор не смог исправить все ошибки, то на последующем шаге конвертация вылетит и ошибки придётся исправлять вручную по этому методу.
3.10 создаём файл ConvertToNM2.vbs с содержимым
Option Explicit
On Error Resume Next
Dim a
Set a = CreateObject ("GPSMapEdit.Application.1")
a.MinimizeWindow
Dim fso
Set fso = CreateObject ("Scripting.FileSystemObject")
Dim strRoot
strRoot = fso.GetAbsolutePathName (WScript.ScriptFullName + "\..\")
Dim pMapsFolder
Set pMapsFolder = fso.GetFolder (strRoot)
Dim pFile
For Each pFile In pMapsFolder.Files
Dim strExt
strExt = LCase (fso.GetExtensionName (pFile.Path))
If strExt = "img" Or strExt = "ntm" Or strExt = "rus" Or strExt = "mp" Then
a.Open pFile.Path, False
Dim strOutFile
strOutFile = fso.GetParentFolderName(pFile.Path) + "\" + fso.GetBaseName (pFile.Path) + ".nm2"
a.SaveAs strOutFile, "navitel-nm2"
End if
Next
a.ExitСоответственно для конвертации нужно запустить main.bat
Данный скрипт у меня работал на WinXP SP3, а сейчас успешно работает под Win7.
Last edited by Paspartu (2012-02-28 16:42:13)
Offline
#3889 2012-03-01 10:26:46
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертация OSM в Navitel
to Paspartu:
спасибо, все перепробовал, ошибка одна и та же.
Што там за символы нечитаемые непонятно!
при попытке использовать cp1251
выдает вот такую ошибку
Can't locate PerlIO/via/PrepareCP1251.pm in @INC (@INC contains: C:/Perl64/Navitel_Convert/___test C:/Perl64/site/lib C:/Perl64/lib .) at (eval 147) line 2.
где его взять и куда положить подскажите пжлста
Offline
#3890 2012-03-01 10:49:12
- Paspartu
- Member
- From: Владивосток
- Registered: 2011-03-12
- Posts: 318
Offline
#3891 2012-03-01 11:42:11
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертация OSM в Navitel
скачал. спс.
ОШИБКА ОСТАЛАСЬ! ну что же это такое то блин!
а можно как то вычислить, что это за символы и где они?
Last edited by Ильин Роман (2012-03-01 12:05:42)
Offline
#3892 2012-03-01 12:51:47
- Paspartu
- Member
- From: Владивосток
- Registered: 2011-03-12
- Posts: 318
Re: Конвертация OSM в Navitel
Только что отконвертировал, не одной ошибки.
Offline
#3893 2012-03-01 15:59:14
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертация OSM в Navitel
Только что отконвертировал, не одной ошибки.
вот я и не понимаю, с чем это связано
Offline
#3894 2012-03-01 23:27:49
- paavolobja
- Member

- From: Saint-Petersburg
- Registered: 2011-03-08
- Posts: 155
Re: Конвертация OSM в Navitel
Тук, тук, тук!
Простите, что помешал, но можно ли как-нибудь обновить Финляндию, все-таки? А?
Offline
#3895 2012-03-02 03:45:17
- Paspartu
- Member
- From: Владивосток
- Registered: 2011-03-12
- Posts: 318
Re: Конвертация OSM в Navitel
Тук, тук, тук!
Простите, что помешал, но можно ли как-нибудь обновить Финляндию, все-таки? А?
Финляндия 54224
1 Лапландия 1724359
2 Похьойс-Похьянмаа 1724360
3 Кайнуу 1997164
4 Похьойс-Карьяла 1999428
5 Северное Саво 918898
6 Этеля-Саво 918897
7 Этеля-Похьянмаа 1702263
8 Похьянмаа 2000320
9 Пирканмаа 1701741
10 Сатакунта 2000361
11 Кески-Похьянмаа 1702330
12 Центральная Финляндия 1701740
13 Варсинайс-Суоми 38092
14 Этеля-Карьяла ?
15 Пяйят-Хяме 1703362
16 Канта-Хяме 1473990
17 Уусимаа 37355
18 Кюменлааксо ?
19 Аландские острова 1650407
Fortress начал рисовать границу между оставшимся областями, но почему то остановился.
Я могу настроить конвертацию, но т.к. Вы явно лучше меня знаете Финляндию, Вам задача - дорисовать границу между оставшимся областями.
Last edited by Paspartu (2012-03-02 04:02:36)
Offline
#3896 2012-03-02 05:55:50
- Fortress
- Member

- From: Russia, Saint-Petersburg
- Registered: 2009-07-09
- Posts: 1,109
Re: Конвертация OSM в Navitel
Было свободное время как раз хотел пересобрать Финляндию по всем правилам. Начал рисовать границы. Времени не хватило, поэтому пока зависло...
Offline
#3897 2012-03-02 14:23:12
- dedNikifor
- Member

- From: Белгород
- Registered: 2009-09-11
- Posts: 3,419
Re: Конвертация OSM в Navitel
Было свободное время как раз хотел пересобрать Финляндию по всем правилам. Начал рисовать границы. Времени не хватило, поэтому пока зависло...
надо тебе подготовить to-do список для желающих помочь, но незнающих чем
тогда, глядишь, и дело пойдет быстрее
Offline
#3898 2012-03-03 13:39:06
- paavolobja
- Member

- From: Saint-Petersburg
- Registered: 2011-03-08
- Posts: 155
Re: Конвертация OSM в Navitel
надо тебе подготовить to-do список для желающих помочь, но незнающих чем
тогда, глядишь, и дело пойдет быстрее
Это да.
Offline
#3899 2012-03-03 15:42:24
- Pavlo
- Member

- From: Снежинск
- Registered: 2010-01-31
- Posts: 150
Re: Конвертация OSM в Navitel
А что можно сделать, чтобы мусульманские и православные кладбища отображались по-разному? Сейчас они отображаются одинаково - тип, вроде, 0x1a .... т.е. тэг religion = muslim не учитывается..?
Last edited by Pavlo (2012-03-03 15:44:29)
Offline
#3900 2012-03-03 20:44:50
- dimuzz
- Member
- From: Екатеринбург
- Registered: 2009-09-10
- Posts: 1,843
Re: Конвертация OSM в Navitel
А что можно сделать, чтобы мусульманские и православные кладбища отображались по-разному? Сейчас они отображаются одинаково - тип, вроде, 0x1a .... т.е. тэг religion = muslim не учитывается..?
Чтобы отображались по-разному - никак. НН не поддерживает кастомных типов.
Религию в принципе можно дописывать в примечание (Text), но оно будет видно только при просмотре полной информации об объекте.
Offline