неділя, 8 квітня 2012 р.

Карта Пд-Сх Європи для Garmin

Карта з адресним пошуком (поки що до вулиці) з позначеними номерами будинків.
Дані карти -- з проекту OpenStreetMap.org


Країни:
Боснія і Герцеговина, Болгарія, Хорватія, Чехія, Угорщина, Італія, Косово, Македонія, Молдова, Чорногорія, Польща, Румунія, Сербія, Словаччина, Словенія, Україна, Ватикан
Буде корисна для всіх прибульців в Україну та Польщу під час Євро-2012.

Зкачати безплатно готовий файл карти Пд-Сх Європи IMG для GPS навігаторів Garmin.
gmapsupp.img
Просто помістіть цей файл в папку Garmin на внутрішній пам'яті пристрою або SD-карти (Ви повинні створити каталог Garmin, якщо його там немає).

Download free maps for Garmin GPS navigators. Based on OpenStreetMap.org project.
gmapsupp.img 
Countries included:

Bosnia and Herzegovina, Bulgaria, Croatia, Czech Republic, Hungary, Italy, Kosovo, Macedonia, Moldova, Montenegro, Poland, Romania, Serbia, Slovakia, Slovenia, Ukraine, Vatican City
It will be useful for all newcomers to Ukraine and Poland during Euro 2012.
 
Just put this file into Garmin directory on your unit's internal memory or SD-card (you are to create Garmin directory if it is not there).

Важливо! Для коректної роботи прокладання маршрутів потрібно зкачати і записати в пристрій в основну пам'ять базову карту світу (gmapbmap.img), остання версія на даний час: Garmin WW Autoroute DEM Basemap NR 5.01. Зкачати можна або на сайті Garmin, або деінде. Взагалі-то, вона вже має бути в пристрої, але не завжди актуальна.

Пошук по номерам будинків, можливо буде, якщо його генерування з'явиться в пізніших версіях mkgmap. Або можна вручну редагувати OSM за зразком http://4pda.ru/forum/index.php?showtopic=70509&st=1960#entry2032230 (що для величезних територій практично нереально)


Порядок створення. (Без розжовування)

Щоб не чекати годинами, поки відбудуться конвертування, можна тренуватися на невеличких країнах, або взагалі невеличких клаптиках, вирізаних програмою JOSM.

Для конвертації необхідно принаймні 1500 МБ вільної оперативної пам'яті. Також чим потужніший процесор, тим краще.

Визначити, яка теріторія має бути в карті (В прикладі це країни: 'Ukraine', 'Bulgaria', 'Poland', 'Romania', 'Republic of Moldova', 'Hungary', 'Slovakia').
Зкачати відповідні дані OSM в форматі osm.pbf наприклад звідси http://download.geofabrik.de/osm/ (я качаю всю Європу, тобто, http://download.geofabrik.de/osm/europe.osm.pbf  [7.6 Gb на момент 2012-04-01] ).

У випадку, коли потрібно лише якась одна країн, можна просто скачати відповідний osm.pbf і не обов'язково створювати файл OSM Poly. Також, напевне, можливо об'єднати готові файли кількох країн, але десь читав, що краще вирізати одним куском (щось пов'язане з навігацією і дублюванням ліній).

Створення OSM Poly для вибраної ділянки (лише для нестандартної ділянки).

Створити файл OSM Poly потрібної ділянки, якщо потрібна карта з нестандартним набором територій. http://wiki.openstreetmap.org/wiki/Osmosis/Polygon_Filter_File_Format за туторіалом http://oegeo.wordpress.com/2011/11/05/tutorial-poly/
 - качаємо Quantum GIS http://www.qgis.org/ і плагін OSM POLY export до нього.
 - качаємо дані кордонів країн http://thematicmapping.org/downloads/world_borders.php
 - додаємо векторний шар в Quantum GIS і вставляємо ці дані:

- вибираємо необхідний набір країн:
  ПКМ (права кнопка миші) по назві шару, "Запит" і створюємо потрібний запит:


 - результат:



- спрощуємо
Вектор Vector-->Обробка даних--> Буферні зони



"Додати результат до шару?" - "Так":


Вектор Vector-->Обробка даних--> Опуклі оболонки або, якщо потрібно точніше обмежити ділянку, користуємося іншими інструментами векторної обробки.


"Додати результат до шару?" - "Так":


 - експортуємо в OSM POLY
Потрібно виділити відповідний полігон і "Плагіни" --> Export --> OSM Poly, формат для ексорту ISO2.
Отримуємо файл .poly в папці з програмою Quantum GIS (вибрати директорію для збереження плагін не дає) з подібним вмістом:


Чудово! Тепер треба вирізати з файлу усієї Європи OSM-дані лише потрібної ділянки.
Для цього використовуємо  osmosis.jar (java) http://wiki.openstreetmap.org/wiki/Osmosis або osmconvert.exe http://wiki.openstreetmap.org/wiki/Osmconvert
Напр. Osmconvert:
  osmconvert.exe "j:\maps\europe\europe.osm.pbf" -B=soeseu\seu-op.poly -o=seu.pbf


Отримуємо потрібний pbf-файл.

Тепер, можливо, передостанній етап -- потрібно порізати цей величезний файл на дрібніші кусочки, щоб конвертер міг його переварювати..

Для цього є splitter.jar http://wiki.openstreetmap.org/wiki/Splitter

Я запускаю з такими параметрами:
java -Xmx1500m -jar splitter.jar --max-nodes=1000000 seu.pbf
 -Xmx1500m  -- дозволяю використати до 1500Мб ОЗП

Качаємо Mkgmap 
http://wiki.openstreetmap.org/wiki/Mkgmap,
http://wiki.openstreetmap.org/wiki/Mkgmap/help/How_to_create_a_map

Для того, щоб працював адресний пошук потрібні спеціальні дані адміністративного поділу. Можна скачати звідси http://www.navmaps.eu/index.php/developers/bound і розпакувати в папку bounds поряд з Mkgmap.jar

Також треба мати TYP-файл з іконками для POI
Його можна десь скачати, або виковиряти з готових карт. Напр. з цих, що тут  ftp://ftp5.gwdg.de/pub/misc/openstreetmap/download.openstreetmap.de/aio/ (до речі там є готові карти для заливки в Garmin, але без адресного пошуку наразі).
Виковиряти можна програмою GMapTool
Редагувати TYP-файли прогами TYPViewer або TYPWiz 2 http://www.pinns.co.uk/osm/


Також потрібний спеціальний набір файлів стилю конвертування для Mkgmap
Я використовую стилі з цього набору: http://maptourist.org/files/myConfigs/ . Я лише дещо підправив, щоб видаляти полігони житлових кварталів, бо вони накривали полігони будинків і також задав показувати будинки стилем спортивних комплексів (інакше на Garmin nuvi 350 номери будинків показувалися лише при підведенні курсора). І ще дещо несуттєве. Також в M00001ef.TYP додав іконку для дерев.

mymaptourist.zip

В файлі видалив name:ru, щоб правильно відображалися назви:
   name-tag-list = name:ua,name,name:en,int_name

Насамкінець моя команда запуску збирання IMG-файлу:
java -Xmx1500M -jar mkgmap.jar --style-file=examples\styles\maptourist  --route --remove-short-arcs  --add-pois-to-areas --index --location-autofill=bounds  --gmapsupp *.osm.pbf --family-id=495 M00001ef.TYP

На виході отримуємо gmapsupp.img, котрий кидаємо на картку в теку garmin і дивимося що вийшло.
Щоб не тикати туди сюди карткою, можна також відкривати один з готових фрагментів програмою MapSource і переглядати результат.

Ще посилання:
http://wiki.openstreetmap.org/wiki/OSM_Map_On_Garmin
http://4pda.ru/forum/index.php?showtopic=70509&st=1960#entry2032230
http://www.dandra.cz/geo/gps/typ/typ_en.html
http://www.cferrero.net/maps/maps_index.html
http://gis-lab.info/data/mp/#
http://www.splav-with-gps.ru/karti-dlya-garmin/
http://maptourist.org/

Немає коментарів: