4x4 туризм - Клуб


Клуб любителей внедорожных путешествий.
search must be here
Статьи :: Карты для Гармин своими руками (урок 1)

Новости

Репортажи

Календарь

Подготовка

Маршруты

О Клубе

Ссылки

Counters must be here
[phpBB Debug] PHP Warning: in file /var/www/sites/4x4typ/engine/articles/article.php on line 11: fopen(articles.csv): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file /var/www/sites/4x4typ/engine/common.php on line 262: fgets() expects parameter 1 to be resource, boolean given

Карты для Гармин своими руками (урок 1)

Картографам –любителям посвящается.



Создание карт дело не простое, но кому-то может показаться занятным.



Инструменты.



Сегодня имеется достаточное количество и качество инструментов позволяющее самостоятельно создавать карты для Навигаторов Гармин.



Не вдаваясь в историю…

На сегодняшний день для самостоятельного создания карты нужно как минимум иметь программу GPSMapEdit (http://www.geopainting.com/)

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



Эта программа работает с текстовым «кодом» макета карты формата MP. MP («польский формат») это формат другой программы - cGPSmapper.exe (http://www.cgpsmapper.com/).

Для начала можно вооружиться бесплатной версией программы.



Программа Global Mapper позволяет делать некоторые операции которые не реализованы в GPSMapEdit.



Для работы непосредственно с текстовым «черновиком» карты может понадобится мощный текстовый редактор, например notepad++.exe



Для работы с файлами может понадобится редактор ХЕКС кода, например HexEditPlus



Кроме того понадобятся программы - Rеname-it.exe – для разного пакетного переименования файлов, replacer.exe – пакетная замена слов в текстовых файлах.



Кроме того потребуется некоторое количество стандартных запускающих файлов (Текстовые файлы с расширением BAT).



Например, файл может содержать такие строки:



cGPSmapper ac H:\SRTM\M-39-B_Ural'sk.mp

cGPSmapper ac H:\SRTM\M-40-A.mp



Для самых отчаянных картографов понадобится векторизатор easytracer.



Пожалуй забыл про ОзиЭксплорер. Вроде как само собой разумеется…

Надеюсь программа MapSource у вас так же установлена. Надо отметить что версия выше 6.13.7 не корректно или вовсе не работает с самодельными картами, так что остановимся на этой версии Мапсорса.



GPSmapEdit.



Не берусь описывать все возможности программы, возможно я и сам чего-то не знаю.

На освоение программы уйдут недели и месяцы, но мне её интерфейс кажется весьма понятным.



Предположим, что нашей задачей является создание карты вокруг собственной дачи…

Или, скажем, мы хотим создать карту места рыбалки…



Очень желательно раздобыть подробную карту Ози нужного места. Кроме того не помешает какая-нибудь карта в формате понятном GPSmapEdit, чем подробнее и точнее тем лучше.

Это поможет избежать ненужного рисования некоторых объектов.

В крайнем случае можно рисовать с ноля.



Если подходить к вопросу «в промышленных масштабах» то начать стоит с программы векторизатора. В случае масштабов далеких от «промышленных» не стоит об этом задумываться, так как

1. Программа требует долгого освоения.

2. Программа требует тщательной подготовки растра.

3. Программа требует ручного исправления допущенных ошибок…



Одним словом небольшую карту проще нарисовать «руками» в гпсмапедите.



Если векторный файл у нас есть то открываем его. Инструментом Трим Мап обрезаем карту по необходимому контуру. Теперь сохраняем полученное в формате MP.



В Ози проверяем правильность привязки карты и верность расстановки углов поля карты. Добавляем (открываем) озёвый файл *.map в окно программы мапедит. Вполне полезным будет переключить кнопкой «U» все дороги в яркие линии. На самом деле это режим показывающий тип дорог с точки зрения дорожного графа. Но как он удобен для редактирования карты на фоне загруженных растров!!!

Наиболее удобный вариант – тонкие красные линии (Режим скорости «0», Класс дороги «0»). Перебирая параметры роутинга можно сделать дороги наиболее «красивыми» для себя. В зависимости от скоростного режима и класса дороги меняется цвет и ширина. Придать всем линиям одного типа на карте один роутинговый параметр можно пакетным редактированием. Выделить объекты тип… изменить (модифай) роутинг….



Кнопка «скрыть приложенные файлы» помогает мгновенно от трека с растровой картой перейти на Гуглевую подложку (если была нажата кнопка «G»).



Отрисовка дорог осуществляется инструментом полилиния. Замечу что точки (клики мыши) полилинии нужно ставить не только в месте перегиба линии но и в месте пересечения с другой дорогой…



Теперь стоит немного пояснить особенности формата MP.



Структура текстового файла карты формата MP



Обязательным атрибутом файла является заголовок в начале файла. Он может быть таким:



; Generated by GPSMapEdit 1.0.51.0



[IMG ID]

CodePage=1251

LblCoding=9

ID=2005001

Name=M.O. Forosenko©26.06.08

TypeSet=Navitel

Elevation=M

Preprocess=F

TreSize=1024

RgnLimit=796

POIIndex=Y

Copyright=Forosenko©2007.

DrawPriority=26

Lock=Y

Levels=6

Level0=23

Level1=19

Level2=17

Level3=15

Level4=13

Level5=12

Zoom0=1

Zoom1=2

Zoom2=3

Zoom3=4

Zoom4=5

Zoom5=6

[END-IMG ID]



Первые две строки – кодировка документа, в данном случае кириллица

ID – уникальный 8-ми значный идентификатор файла. Для удобства этот код должен содержать информацию о файле… каждый может придумать свою… в моём случае 200 – масштаб основы «2 км» (такова была карта изначально, но код сохранился) 50 – регион по коду ГАИ – мос. область. 01 – номер карты или номер варианта.



В картах соответствующих картам ГШ я использую другую идентификацию…51104701 означает масштаб 5 км, 11=Р, 047 – 47, вариант 01. Квадрат Р-47 по номенклатуре ГШ.



Name – имя файла в списке карт приборов гармин и мапсорсе.



TypeSet – набор символов в программе Мапедит. Ввиду скупости набора для Гармин я пользуюсь набором Навител. Чернвик стоит оставить таким и перед компиляцией файла карты сделать копию c TypeSet Garmin. Далее при помощи TYP в гармине переназначаются некоторые объекты. О TYP позже.



Elevation – единицы высот. В мапедит легко конвертируются лейблы из футов в метры и обратно. Использую метры, впрочем теперь это не так важно так как рельеф вынесен в отдельный файл – SRTM. Об SRTM позже.



Preprocess=F – варианты обработки файла.

TreSize=1024

RgnLimit=796 – магические числа :-) параметры влияющие на плотность «порезки» файла для экрана. Это влияет на скорость «прокрутки» карты. Современные приборы вполне легко переваривают готовые файлы даже с плохими «параметрами».



POIIndex=Y – индексация полезных точек карты для поиска.



Copyright=Forosenko©2007. – копирайт отображающийся при включении прибора/загрузке карт.



DrawPriority=26 – приоритет карт, по умолчанию 25, для прозрачных карт 30. Современные приборы игнорируют этот параметр при наличии «Родных» карт.

Lock=Y – блокировка карты, используется для затруднения хищения.

Levels=6 – количество слоёв в карте. Верхний уровень пустой.

В векторной карате Гармин более высокий слой содержит меньше информации для разгрузки экрана. Как я уже говорил при использовании существующего макета нас не интересуют слои кроме Level0, работаем только с ним. Первое что мы сделаем при создании более подробной карты – увеличим разрешение слоя. Гармин не понимает больше 24, но использовать больше 23 не вижу особого смысла. В картах ворлд мап (десятимилька) этот параметр 19, в более подробных 21, в подробных городских доходит до 24. Разрешение последующих слоёв рекомендую делать в соответствии с приведёнными данными, тоже относится и к параметрам Zoom, Это параметр отображения слоёв в программе МапСоурс.



Далее наш документ содержит данные поиска, на них останавливаться не буду, так как наша задача топокарты.

За ними начинается описание объектов карты. Объекты карты могут быть трёх видов – Точки, Линии, Полигоны.

Например



[POI]

Type=0x2800

Label=11

Data0=(56.82472,60.53535)

[END]



Точка, типа «2800» («Надпись на карте», в данном случае это номер дома)

Лейбл, отображаемое название объекта – «11»

Дата - Координаты объекта в градусах. В дате 0,1,2 и тд – слой на котором объект отображается. В данном случае «самый нижний» - 0.



[POLYLINE]

Type=0x6

Label=Червонная ул.

Data0=(53.36811,83.75457),(53.36596,83.74895)

[END]



Линия типа 06 – «Переулок», название, Дата – данная линия уровня 0 содержит две точки, между которыми и проведена на карте. Карта может содержать данные роутнига – дорожного графа, в таком случае количество данных точки будет большим -



RoadID=13717

RouteParam=2,0,0,0,0,0,0,0,0,0,0,0

Nod1=0,287,0

Nod2=1,357,0



Но на вопросах роутинга я тоже не планирую останавливаться. Для внедорожной навигации можно обходиться автоматической генерацией дорожного графа программой ГПСмапедит. В пампасах можно и вовсе без автороута обойтись… Пользу роутинга в случае бездорожья я вижу в возможности определить расстояние до цели с учётом извилистости дорог, а не только по прямой.



[POLYGON]

Type=0x19

Label=Динамо

Data0=(58.00397,56.23859),(58.00414,56.23830),(58.00434,56.23822),(58.00453,56.23837),(58.00468,56.23869),(58.00466,56.23901),(58.00451,56.24066),(58.00431,56.24105),(58.00408,56.24105),(58.00389,56.24079),(58.00378,56.24049),(58.00378,56.24030),(58.00391,56.23878)

[END]





Полигон, тип 19 – «Спортивный комплекс», название - «Динамо», полигон состоит из 13 точек находящихся на нулевом слое карты..



Что рисовать?



Карты мы делаем для Авто(Мото)мобильных и пеших походов. Это стоит помнить.



Объекты представляющие интерес для нашего рисования – пути движения, препятствия, ориентиры и дополнительная информация.



Точки

Мосты и броды, высоты/глубины, ямы/холмы, башни, избы, урезы и данные воды, характеристики леса, лесхозные кварталы и пр. Некоторые точечные объекты могут рисоваться как полигоны – кладбища, здания и др.



Линии

проселочные дороги и грунтовые дороги, просеки и тропы.

Канавы и ручьи.

ЛЭП и Трубопроводы.

рельеф - по большому счёту он нас может интересовать лишь в некоторых специфичных случаях, теперь принято использовать данные SRTM (но их нет выше 60Гр широты).



Полигоны.

Леса и кусты – контуры леса - как правило, это проезжие, проходимые места. Места удобные для стоянок.

Иногда болота и водоёмы. Некоторые мелкие полигоны «не выражающиеся в масштабе карты» целесообразнее обозначать точками.



С чего срисовывать?



Стоит знать что Юридическая сторона вопроса мягко говоря туманна, обсуждать не буду просто сообщаю. Исходим из того, что карта делается для личного пользования с исходников не обремененных (авторскими или др.) правами…



Источника для рисования карты как правило три – Карты ГШ, Треки, Космоснимки (Гугль). Вcё это как подложка создаваемого «вектора» грузится в программу GPSmapEdit.



Зачастую эти источники противоречат друг другу. Именно по этому стоит понять с чего начинать рисовать!



Приоритетным носителем данных, по моему убеждению, является карта ГШ. Километровки обычно достаточно, о легальности использовании 500ок судить не берусь.



Многие сталкивались с тем что карты ГШ безнадёжно устарели. Так и не так! Дело в том что заваленные и на первый взгляд не существующие ныне дороги и просеки в любой момент могут быть восстановлены. Тушение пожаров, лесозаготовки, катания джиперов и другие факторы могут возродить даже самую безнадёжную дорогу-просеку.



Контуры леса в большинстве случаев сохраняются…



Новые объекты такие как дороги просеки, газопроводы и ЛЭП рисуются из данных треков и с гуглевской «подложки» в гпсМапЕдит. К сожалению покрытие качественными снимками гугла пока хромает… Снимки низкого разрешения – основная часть покрытия земли могут использоваться для уточнения 2-х километровок, не более.



Треки совсем не обязательно брать свои, можно поискать в Интернете. Треки должны быть качественными…. Как правило их легко проверить по космоснимкам. Иногда бывают существенные уходы от реальной траектории, поэтому с чужими треками надо обращаться аккуратнее, а свои снимать с внешней антенной и запоминать те случаи когда были явные уходы с реальной траектории (такое бывает при плохом приёме или сбое).



Бывает и иначе. Кусок мозаики гугля некоторых районов криво вклеен, именно так обстоит дело с Голицыно в МО.



Что чем обозначать (важно!).



Спектр типов объектов Гармин узок. Впрочем, для наших целей того вполне хватает. Кроме того, существует технология TYP – переобозначение стандартных типов в любые желаемые. На всякий случай, дабы не упираться в скудный тип Гармин исходники карт целесообразно хранить в Type Set Navitel.

Проблема верного отнесения рисуемых объектов является важной!



Дороги (линии).



TypeSet Garmin

0x00 Дорога

0x01 Автомагистраль

0x02 Шоссе основное

0x03 Прочие загородные дороги

0x04 Городская магистраль

0x05 Улица крупная

0x06 Улица малая

0x07 Переулок, внутриквартальный проезд

0x08 Наклонный съезд с путепровода

0x09 Наклонный съезд с путепровода скоростной

0x0a Грунтовая дорога

0x0b Соединительное шоссе

0x0c Круговое движение

0x16 Аллея, тропа



TypeSet Navitel (включает вышеперечисленные)

0x42 Улучшенная грунтовая дорога

0x48 Просека

0x49 Полоса движения



Выделены наиболее используемые типы.



На картах эти типы могут не соответствовать реалиям по двум причинам – ошибка при создании и изменение со временем. По спутниковым снимкам тип дороги не всегда можно верно определить. Самый достоверный источник - опыт, то есть треки.



Как предисловие. В СССР ГОСТ дорог имел 5 категорий. Ширина полос, максимально допустимые изгибы, покрытие… это факторы определяющие категорию дороги. К пятой категории относились грунтовые дороги, к первой Автомагистрали с разделенным движением. Этого госта и будем придерживаться.



Тропы/просеки. На картах – короткий пунктир. Просеки - 0x48 (Navitel), Тропы 0x16 (Navitel/Гармин). При конвертации в TypeSet Гармин оба типа объектов станут 0х16.



Грунтовые дороги. На картах есть два типа – черные лини, сплошные и прерывистые.

Для TypeSet Garmin – я использую 0x07 и 0x0a соответственно. В некоторых случаях целесообразно обозначать такие дороги как 0x06. Так же обозначаются сезонные дороги (зимник, летник).



Дороги с покрытием. То есть «грейдер», «гравийки». В зависимости от значимости такой дороги я обозначаю её типом от 0x06 или 0x05 до 0x01.

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



Асфальтированные дороги. Это дороги второй и третье категории. Чаще всего это 0x05, 0x04 и 0x02. Так же как и в предыдущем случае важны факторы контекста. Дороги типа 0x03 я почти не использую ввиду особенностей программы GPSmapedit – в программе этот тип дорог трудно отличить от дорог «низкого» уровня 0x06 и 0x07. Обращения к разработчику не увенчались успехом.

Транзитные трассы типа «федеральная» всегда имеют значение типа выше чем локальные. Это не зависит от качества покрытия! А-108 всегда приоритетнее чем хороший заезд к дачам. В некоторых случаях «федералки» следуют обозначать типом 0x01.



Автомагистраль. Несомненно 0x01. Дорога первой категории! Если это фактически дорога первой категории, то в этом случае целесообразно полосы движения обозначать разными линиями с односторонними движениями. В остальных случаях мы подчеркиваем важность данной дороги для конкретного региона.



Полигоны.

Типсет Гармин даёт нам множество типов…. Пусть не все мы воплотим в карте, но изначально стоит помнить о всём разнообразии. Навител имеет ещё большее разнообразее, Главное что оно более адекватно…



Я разделяю для себя полигоны на три основные группы: 1. «Человеческие», 2. Водоёмы, 3. Растительность.

1. Искусственные.

0x01 Городcкая застройка (>200 тж)

0x02 Городcкая застройка (<200 тж)

0x03 Застройка сельского типа

0x04 Военная база

0x05 Автостоянка

0x06 Гаражи

0x07 Аэропорт

0x08 Место для торговли

0x09 Пристань

0x0a Территория университета или колледжа

0x0b Больница

0x0c Промышленная зона

0x0d Резервация, заповедник

0x0e Взлетно-посадочная полоса

0x13 Здание, искусственное сооружение

0x1a Кладбище







2. Водоёмы

0x28 Море/океан

0x29 Водоём

0x32 Море

0x3b Водоём

0x3c Озеро большое (250-600 км2)

0x3d Озеро большое (77-250 км2)

0x3e Озеро среднее (25-77 км2)

0x3f Озеро среднее (11-25 км2)

0x40 Озеро малое (0.25-11 км2)

0x41 Озеро малое (<0.25 км2)

0x42 Озеро крупное (>3.3 т.км2)

0x43 Озеро крупное (1.1-3.3 т.км2)

0x44 Озеро большое (0.6-1.1 т.км2)

0x45 Водоём

0x46 Река крупная (>1 км)

0x47 Река большая (200 м-1 км)

0x48 Река средняя (40-200 м)

0x49 Река малая (<40 м)



0x4c Пересыхающая река или озеро

0x4d Ледник

0x51 Болото

0x53 Отмель



3. Растительность

0x14 Национальный парк

0x15 Национальный парк

0x16 Национальный парк

0x17 Городской парк

0x18 Поле для гольфа

0x19 Спортивный комплекс

0x1e Государственный парк

0x1f Государственный парк

0x20 Государственный парк



0x4e Фруктовый сад или огород

0x4f Кустарник

0x50 Лес

0x52 Тундра



Типсет навител может нести более полезную информацию: «заросли стланика», «низкорослый лес», «вырубки», Хвойный, смешанный и др. лес.



Я использую тип Гармин 0x14 – как хвойный лес, 0x15 – смешанный, 0x16 Лиственный.

Вырубки, низкорослый лес, стланник и кусты я обозначаю как 0x4f.

Иногда использую полигон «Тундра» для обозначения открытых пространств – на картах с преобладанием леса, на которых целесообразнее рисовать не все контуры леса, а лишь нужные фрагменты карты с полянами и полями.



По остальным полигонам думаю и так понятно. Жирным – наиболее часто используемые.



Для первого урока достаточно :-)


Другие статьи из этого раздела


GPSMAP 276C автор Фороcен©о
Инструкция для Ozi Explorer
Какие существуют карты для GPS навигации.
Карты для Гармин своими руками (урок 1) автор Фороcен©о
Настройка OziExplorer автор Фороcен©о
Начало работы автор Фороcен©о
Рекомендации по записи Трэка и Точек маршрута. автор Фороcен©о




Реклама





Место для вашей рекламы.
   расценки на размещение.


VVV.RU  Rambler's Top100