Загрузка объектов в GPSMapEdit и создание MP-карты

Итак, запускаем программу GPSMapEdit. Вместо того, чтобы сразу начинать экспортировать слои, мы откроем хороши привязанную растровую карту (помните мы убили кучу времени?). Итак, File - Open и выбираем наш map-файл. Проблема здесь может оказаться в том, что в нерегистрированной версии программы хоть и позволяется загружать растровые файлы, но на них накладывается ограничение, связанное с возможностями видеоадаптера и еще одно ограничение сверху, введенное уже самими разработчиками. У меня видеопамяти всего 16мб, и при загрузке карты Кутуков, программа выдала сообщение об ошибке, в котором утверждалось, что во-первых, программа незарегистрированная, а во вторых, размер растра составил 19 млн пикселов и это превысило возможности видеоадаптера. Как бы то ни было, я загрузил растр в фотошоп, выбрал там Image - Canvas Size и отхряпал от карты с одного бока километров 6. Уменьшил растр, одним словом. И тогда растр загрузился в GPSMapEdit и я увидел там свою растровую карту.

После этого загрузил с помощью File - Add имеющийся трек, чтобы еще раз убедиться, что карта растровая привязана как надо. После этого можно было бы начинать уже импорт векторных объектов, но мы сделаем еще одну важную вещь - настроим уровни карты. Для этого зайдем в File - Map Properties - Levels.

Для чего вообще нужны уровни? Дело в том, что результирующая карта, которая будет загружена в GPS, будет отображаться при очень разных масштабах. От самых крупных, когда вы будете отходить от палатки, пардон, в туалет, и захватите на всякий случай GPS, чтобы вернуться - до самых мелких, когда будете смотреть на район, подъезжая к нему на поезде. Очевидно, что на самом мелком масштабе совершенно не нужны все изгибы всех горизонталей, они только перегружают карту количеством объектов, которые все равно не видны или видны еле-еле. Для этого как раз и использую понятие уровня. Карта по сути представляется не одним слоем, а несколькими, по количеству уровней, - то есть, по сути, одновременно вместо одной карты закачивается сразу несколько! В каждый момент времени отображается только один уровень, в зависимости от текущего масштаба, и очевидно, что наполнение карты должно быть разным для разных уровней. В уровне, соответствующем самому мелкому масштабу, должны быть только самые крупные объекты, типа больших дорог, крупных рек и так далее. В уровнях, соответствующих более крупным масштабам должны уже появляться более мелкие объекты, и наконец в уровне, соответствующем самому крупному масштабу, должен содержаться максимум подробной информации.

Итак, мы смотрим на окно уровней, в котором ничего не присутствует. Нажмем кнопку Insert Before - и увидим, что вместо одного слоя проявились сразу два. Дело в том, что на любой карте последний слой должен быть пустым, то есть в нем не должно содержаться ни одного объекта. Поэтому нажмем еще раз кнопку Insert Before, чтобы получить второй слой, с которым можно будет работать. Итак, у нас есть Level0 и Level1, в которые можно добавлять объекты, и Level2, который должен остаться пустым. С помощью кнопки Change выставляем, например, следующие значения для слоев:

Что означает запись "5km - 8km"? Это означает, что при укрупнении масштаба карты при масштабе 8км при просмотре карты в GPS проявятся объекты слоя Level1. Но это отнюдь не значит, что при масштабе 5km эти объекты пропадут. Если ниже этого слоя ничего не будет (то есть если будут только Level0 и Level1), то все объекты будут видны от масштаба 8km до любого более крупного. Итак, при масштабе 8km появятся объекты Level1. А когда они исчезнут? А это определяется нижележащим слоем, то есть слоем Level0. Там задан масштаб, при котором перестанет отображаться предыдущий слой, а это 3km, и начнет отображаться слой Level0. Который уже в свою очередь, раз нет нижележащего, будет отображаться при всех более крупных масштабах.

 

Не выходя из окна настроек проекта, перейдем на страницу Header. Там обязательно надо будет выставить TypeSet в Garmin, но пока не загружены векторные объекты, этого сделать нельзя. Зато прямо сейчас нужно заполнить восьмициферный код карты ID. Он должен быть уникальным для всех карт, загруженных одновременно в один GPS, но в остальном он может быть любым. Вообще-то где-то есть правила, по которым можно родить ID для той конкретной местности, про которую мы сделали карту, но этих правил не обязательно придерживаться. Имя карты впишем любое. Обязательно выберем CodePage = 1251, потому что наш GPS поддерживает кирилические шрифты, а без этого они не будут нормально отображаться. После этого нажмем Apply и OK.

Вот теперь мы готовы импортировать векторные объекты. Выбираем в меню File - Import - ESRI Shape. Выбираем все shp-файлы, которые нужно добавить в карту. Раз мы экспортировали только один слой, полученный файл и выбираем.

Для каждого файла программа сначала запросит как отображать объекты данного файла в GPS (то ли это дороги, то ли ручьи, то ли еще что), затем предложит выбрать источник для подписей к объектам, затем запросит используемую систему координат. Благодаря тому, что мы приписали номер зоны к координате Х, мы можем смело выбирать "Russian SK-42" и соглашаться с тем, что центральный меридиан будет автоматически выбран по префиксу. Если бы мы работали с относительными координатами (не приписывая номер зоны), то сейчас пришлось бы прописывать этот номер. Еще необходимо выбрать датум, в котором заданы используемые координаты (см. 3.2.1) Выбираем первый Pulkovo-1942 (GOST...):

Дальше нас спросят, в какие слои импортировать объекты. Здесь довольно тонкий момент. Надо учитывать, что в каждый слой, который здесь будет выбран, заталкивается КОПИЯ всех объектов, что понятным образом увеличивает результирующий файл. Мы сейчас импортируем слой рек, поэтому их, возможно, имеет смысл затолкать в оба слоя, чтобы они были видны как на мелких масштабах, так и на крупных. Поэтому мы оставим выбранными оба значения Level0 и Level1. Если бы мы импортировали горизонтали, то имело бы смысл их загрузить только в Level0, чтобы они появлялись только на подробном слое в крупных масштабах. Нажимаем Finish и любуемся на результаты своего труда:

Видим, что карта привязана вполне удовлетворительно и векторные объекты вполне прилично ложатся на растровую карту. После этого растровую карту можно отключить с помощью View - Show Attachments, чтобы больше не мешалась. Векторные объекты получились очень угловатые, и, хотя этого не видно, они содержат кучу лишних точек. В следующий раз надо будет после векторизации слоя в Easy Trace, перед его экспортом, выполнить оптимизацию формы полилиний, при которой удалятся лишние точки и сгладится немного форма кривой. А пока не забудем опять зайти в свойства карты и поставить там теперь TypeSet равным Garmin. После этого выберем File - Save As и сохраним карту в так называемом Польском формате (расширение mp).