Pull to refresh

Загрузка картографии проекта OpenStreetMap.org в навигаторы GARMIN без слота под карты памяти

Reading time 3 min
Views 31K
Здравствуйте, народная мудрость говорит, что скупой платит всегда. Один мой знакомый шахтёр, а по хобби рыбак и охотник, выйдя на пенсию решил приобщиться к миру высоких технологий. Всю жизнь ходил по сибирской тайге пользуясь природной навигацией, а тут купил, посоветовавшись исключительно с продавцом из магазина, чудо прибор GARMIN ETREX 10. Я же считая, что сейчас все навигаторы имеют слот под дополнительную память, пообещал ему загрузить карту лучше, чем белое поле с точкой Новосибирск. К моему удивлению на 2012г, GARMIN выпустил устройство только со встроенной памятью и очень скромного размера. Карта Кузбасса от открытого проекта OpenStreetMap.org поместилась, но прибор не мог вести запись трэка, жаловался на нехватку места. Я решил загрузить только ту часть, где обычно охотится и рыбачит хозяин навигатора, добавив по возможности высоты. Загрузив карту впольском формате в GPSMapEdit и убрав все лишнее, попытался сохранить в IMG файл, получил кучу ошибок на количество точек в дороге, стал искать другое решение.

Следующее что я испробовал это Map Composer но заставить изменить интерфейс с немецкого на английский мне не удалось. Поиски в сети привели к GroundTruth. Требует для работы Microsoft .NET 3.5 или выше и cgpsmapper, подойдет в версии freeПонятная документация и несколько строк в cmd файле:

groundtruth getdata –bu http://www.openstreetmap.org/?lat=53.69&lon=87.059&zoom=10&layers=M
groundtruth contours  --bu "http://www.openstreetmap.org/?lat=53.69&lon=87.059&zoom=10&layers=M"
groundtruth makemap -ibf=output.ibf
groundtruth ibf2osm
groundtruth makemap -rules="http://wiki.openstreetmap.org/wiki/GroundTruth_Hiking_Map"


Выдали готовый IMG для загрузки в прибор, но подписи на карте не в кириллице. Для бывшего шахтёра это не годилось.

Следующее чем я воспользовался это Java программа Mkgmap & Srtm2Osm требующая Microsoft .NET 2.0 либо Mono если у вас Linux.

Открываем на сайте openstreetmap.org нужную нам область и выбираем пункт «Экспорт». Отмечаем формат OpenStreetMap XML. Если область слишком велика, кнопка «Экспортировать» будет не активна. В случае попытки скачать относительно крупный населённый пункт, скорее всего получите «You requested too many nodes (limit is 50000). Either request a smaller area, or use planet.osm». Увеличте масштаб и скачайте несколько osm файлов, передвигая видимую область.

java -Xmx512m -jar mkgmap.jar --code-page=1251 --tdbfile --gmapsupp  --country-abbr=RUS --country-name=RUSSIA --route --description="Openstreetmap South Kuzbass" *.osm


Из нескольких файлов следует выбрать gmapsupp.img и его копировать в прибор. В зависимости от прибора возможно понадобится заменить базовую карту переименовав наш файл в gmapbmap.img.

Для пешей навигации удобно на карте иметь высотные данные. Радарная топографическая съемка большей части территории земного шара (SRTM) доступна бесплатно в нескольких видах. Программа Srtm2Osm позволяет несколькими способами получить эти данные на нужную нам область.

Указывая квадрат из координат -bounds1 53.49 87.05 53.99 87.55
Указывая точку и радиус в км от нее -bounds2 53.69 87.05 10
Либо ссылкой с openstreetmap.org -bounds3 " www.openstreetmap.org/?lat=53.69&lon=87.059&zoom=10&layers=M "

Полученный osm файл копируем к нашим osm файлам и повторяем сборку карты описанную выше.

image

Надеюсь, моя первая статья на Хабре поможет владельцам навигаторов GARMIN без слота под карты памяти или дать второй шанс таким легендам как GPSMAP 276C.
Tags:
Hubs:
+20
Comments 16
Comments Comments 16

Articles