Внесу и я свои 5 копеек.
Так как я интересуюсь только своим Приморским краем, то и содержимое файлов соответствующее…
Так как wiki редактировать всем лень, то с п.2
Скачиваем GPSMapEdit разархивируем в любое место и запускаем 1 раз mapedit.exe, что бы прописались пути в реестре. Если установить версию с инсталятором, то соответсвенно запускать не нужно.
2.Так как все нужные файлы хранятся в репозеториях, то крайне желательно воспользоваться TortoiseSVN или ей подобной.
На примере TortoiseSVN:
2.1 Устанавливаем
2.2 Создаём папки:
getbound со ссылкой на репу http://osm-getbound.googlecode.com/svn
osm2mp со ссылкой на репу http://osm2mp.googlecode.com/svn/
osm2navitel со ссылкой на репу http://osm2navitel.googlecode.com/svn/
После синхронизации папок с репами, создаём папку, например prim, и в неё копируем
из getbound файлы getbound.pl и aliases.yml
из osm2mp osm2mp.pl и всю папку lib
из osm2navitel файл mp-postprocess-navitel.pl, и всё из подпапки cfg
3. В созданной нами папке
3.1 создаём файл main.bat с содержимым
Start /Wait wget.bat
Start /Wait 7z.bat
Start /Wait getbound.bat
Start /Wait osm2mp.bat
Start /Wait osm2mp_rt.bat
Start /Wait mp-postprocess-navitel.bat
Start /Wait ConvertToMP.vbs
Start /Wait ConvertToNM2.vbs
exit
3.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/wgetwin-1_5_3_1-binary.zip из архива нам нужен wget.exe
данный батник закачивает последний osm файл нужного нам региона, причём если файл не изменился, то он его закачивать не будет
3.3 создаём файл 7z.bat с содержимым
7za e RU-PRI.osm.bz2 -y
exit
качаем http://downloads.sourceforge.net/sevenzip/7za920.zip
3.4 создаём файл getbound.bat с содержимым
getbound.pl prim > prim.poly
exit
все коды можно увидеть в файле aliases.yml
3.5 создаём файл osm2mp.bat в кодировке (UTF-8 без BOM) с содержимым
chcp 65001
osm2mp.pl --config=navitel-ru.cfg --namelist label=name:ru,name --defaultcountry=RU --defaultregion="Приморский край" --bpoly=prim.poly RU-PRI.osm > RU-PRI.mp
exit
3.6 создаём файл osm2mp_rt.bat с содержимым
osm2mp.pl --config=navitel-rt-ru.cfg --nobackground --bpoly=prim.poly RU-PRI.osm > RU-PRI-rt.mp
exit
3.7 создаём файл mp-postprocess-navitel.bat с содержимым
mp-postprocess-navitel.pl RU-PRI.mp --killrouting --noshorten
mp-postprocess-navitel.pl RU-PRI-rt.mp --fixrouting --noshorten
exit
3.8 создаём файл ConvertToMP.vbs с содержимым
Option Explicit
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) + ".mp"
a.SaveAs strOutFile, "polish"
End if
Next
a.Exit
3.9 создаём файл ConvertToNM2.vbs с содержимым
Option Explicit
'
' ConvertToNM2.vbs
'
' Copyright (c) Konstantin Galichsky (kg@geopainting.com), 2004-2007
' All rights reserved.
'
'
' This script uses GPSMapEdit to convert multiple maps to NM2 format.
'
' USAGE:
' Input files should be put into .\Maps folder (relative to the script file).
' Log.txt file is created to log progress.
'
' Connect to GPSMapEdit.
Dim a
Set a = CreateObject ("GPSMapEdit.Application.1")
a.MinimizeWindow
' Check version of GPSMapEdit
If a.Version < "1.0.36.0" Then
MsgBox "Obsolete version of GPSMapEdit is used. Please upgrade."
WScript.Quit
End If
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
ЗЫ что бы было понятно где-какие файлы, выкладываю свою сборку (она немного другая чем описанная здесь, но смысл тот же)