Гармин растровые карты. Как загрузить растровые карты JNX на навигаторы Garmin. Отправка файла в навигатор


Однажды фирма Гармин, под давлением прогресса и общественности, разрешила заливать в свои навигаторы карты, созданные на основе растровых изображений. Для чего усовершенствовала уже имеющийся формат, придумала новый, а ещё один позаимствовала у "корпорации добра" под названием Google. Если первый у нас ещё не получил столь широкого распространения и активно применяется, в основном, в приборах морской серии (да и то за пределами страны), то два других предназначены специально для "туристов" и их девайсов (выбор которых не так уж и мал).

Названия/расширения этих карт/файлов/контейнеров: KMZ и JNX

В нашу задачу входит научиться самостоятельно создавать такие карты и заливать их в навигаторы.


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

Первая часть уроков-инструкций посвящена формату KMZ.

Устроен он достаточно просто: берутся файлы изображений в формате JPEG (как правило -- это скан бумажной карты или космоснимок), к ним присоединяются файлы топографической привязки KML (Keyhole Markup Language - язык разметки Keyhole, которую и поглотила в своё время Google), а потом всё это оборачивается в разную служебную информацию, понятную прошивке/системе прибора. Естественно не обошлось без серьёзных ограничений. Что же мы имеем в результате:

Максимальное количество файлов -- не более 100 штук (в Montanе можно 500)
. размер одного файла должен быть не более 1 мегапикселя (1024x1024, 512x2048, etc) -- выходящие за рамки сжимаются принудительно
. вес одного файла не более 3 мегабайт (где-то на форуме читал про проблемы, если вес всех файлов превышал 32 мегабайта, но проверять это надо в каждом конкретном случае)
. файлы только JPEG и обязательно не сжатые методом "рrogressive"
. читаются только из директории \Garmin\CustomMaps

Вообще-то этот формат уже можно считать "устаревшим". Но в то же время он прост и настолько быстр в изготовлении, что можно использовать его для каких-то сиюминутных целей -- для одноразовой поездки за грибами или на рыбалку к примеру. Или залить более детальные космоснимки, которые недавно появились, а переделывать основную карту времени нет. Поэтому лично я со счетов его списывать пока не хочу, да и вам не советую

KMZ-карты мы будем делать c помощью программы -- а) она наша, родная, что меня, если честно, сильно греет; б) она бесплатная; в) с ней не возникает проблем с установкой, освоением и работой -- проще не бывает; г) она мегаресурсная -- тут тебе и космоснимки на любой вкус, тут и "бумага" начиная с Генштаба, ГГС и заканчивая историческими картами; д) и самое главное -- всё делается силами одной программы, с начала и до конца.

Если она ещё не пригрелась на вашем компе, то срочно идите на страницу загрузки , которая через десяток секунд должна начаться автоматически. Устанавливается, как не банально, путём простого перемещения скаченной папки с программой в C:\Program Files. Никаких установщиков. Запускается по даблклик на SASPlanet.exe

Клеить карту мы будем на примере космоснимков, поскольку есть небольшие нюансы. То есть с "бумагой" всё так же по сути, но с масштабами проще -- они или есть или их нет...

А пока, прежде чем мы продолжим, давайте разберёмся, из чего же мы будем клеить наши карты.
В SAS.Планете есть шкала Зума / Zoom: z1; z2 . . . z22, так называемые уровни масштабирования. Передвигаясь по этой шкале, каждый раз мы загружаем новую обойму фотографий, которые порезаны на куски -- тайлы. Чтобы посмотреть на их количество и размер, нужно перейти в меню "Вид"/ "Отражать границы изображений":

Но ни Яндекс, ни Гугл, ни кто либо другой, не заказывают спутниково-космических снимков различной степени детализации для каждого своего уровня. Это было бы слишком дорого, да и не совсем разумно. Поэтому другие масштабы формируются из снимков а) или путём 2-х кратного сжатия, когда 4 стандартных тайла/фотографии по 256х256 пикселей (512х512) превращаются в один тайл 256х256 более верхнего уровня; б) или наоборот (но реже), увеличивая тайл в 2 раз (качество от этого, к сожалению, не улучшается)

Для того места, на примере которого я делаю этот мануал, Яндекс использует всего 3 слоя реальных фотографий:

На z8, а остальные уровни z7; z6 . . . z1 формируются из него
. на z10 лежит метровый снимок, z9 сформирован из него
. на z19 лежит субметровый снимок (пиксель < 1 м 2), из которого слои z18; z17 . . . z11 сформированы тем же путём сжатия

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

В картах KMZ верхнее и нижнее ограничения на уровень отображения задаётся стандартом и зависит... Нет... Давайте сначала разберёмся с терминологией, а то для тех, кто в первый раз с навигатором -- запутаться, как два пальца... А у меня задание, если вы помните.

(!!!) Когда в мануале здесь и далее будет заходить речь о верхнем уровне отображения, о верхенем уровне перехода и вообще о верхнем уровне -- то имеется ввиду маленький Зум (z1 -- самый маленький) и мелкий масштаб (1: 500 000 = в 1 см. -- 5 км. мельче, чем 1: 50 000 = в 1 см. -- 500 м.). Если вам будет легче усвоить, то представите себя поднимающимся на воздушном шаре -- чем выше вы над уровнем земли, тем меньше масштаб "карты-земли". Верхний уровень -- выше над землёй, понижаем уровень -- опускаемся на землю. Грамотно как с точки зрения логики, так и юзабилити интерфейса устроен сервис Яндекс.Карт -- кнопочка "+" у них находится внизу:

В Гугл-сервисах и в САС.Планете ползунок надо тянуть вверх -- повышать масштаб. Но понижать уровень, ага:) Почему так -- не знаю, но привыкнуть до сих пор не могу -- и всегда, где возможно, переставляю шкалу масштаба в горизонтальное положение. Но надеюсь понятно: уровень в плюс -- масштаб/зум в минус:))

Так вот, в картах KMZ верхнее и нижнее ограничения на уровень отображения задаётся стандартом и зависит от того, из которого склеена карта. Допустим мы взяли снимки уровня, которому соответствует масштаб километровки (z15). Когда мы зальём их в навигатор, то наша карта включится на масштабе 3 км. (верхний уровень), а выключится только на 20 метрах (нижний уровень). То бишь, при цифровом масштабировании реальное изображение будет уменьшаться только в 4 раза (что не плохо), а увеличиваться в 16 (жопа из пикселей).
Хотя мы помним, что при переходе на один уровень вниз (тем увеличиваем масштаб) количество тайлов при заданном размере увеличивается квадратично (километровка делится на четыре 500-метровки), уменьшая в 4 раза доступную площадь покрытия, но мне кажется, не стоит сильно гнаться за увеличением площади карты, а лучше выбирать уровни, соответствующие если уж не максимальному качеству снимка, то близким к нему. Просто потому, что экраны навигаторов не ретина-дисплеи смартфонов, несовершенство проще добить SD-картами, которые подешевели до каких-то неприличных цифр -- за 2 Gb просят всего 100 рублей...
Но как бы то ни было, картами уровня "z19" можно покрыть около 12 км. 2 площади, учетверяя её каждым щелчком уменьшения масштаба.

Как определить "правильную" картинку. Как ни странно, самый оперативный способ -- чисто визуальный. Правда нужна некоторая сноровка. Если подходить субъективно, то слой перед последним кажется самым резким, а следующий немного пиксельным, растянутым. Но обычно такой эффект создаёт "цифровой шум", присущий электрическим фотографиям -- а на самом деле он и есть наш "правильный".
Кроме того, при переходе на слой с отсутствующими тайлами можно увидеть "подсказки" (картинка справа), появляющиеся в разных местах карты. Это означает, что слой создан "программным" методом.

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

Чтобы отключить несуществующие уровни в SAS.Планете, нужно в меню "Вид" снять галочку напротив строчки "Брать карты из меньших масштабов" и отсутствующие тайлы выводиться не будут:

  1. Выбор сделан, возвращаемся в окно "Операции с выделенной областью".

  2. Оно сразу откроется на вкладке "Загрузить"

    Если вы уже определились с масштабом слоя, то нужно выполнить всего 3 пункта:

    5.1. Проверить тип карты.
    5.2. Удостовериться в правильности масштаба -- по умолчанию он будет указывать на зум, на котором делался полигон, и далеко не тот, что нужен.
    5.3. Снять галочку напротив пункта "Закрыть окно после старта" -- мы же доведём дело до конца? :) Как только всё проверим -- жмём "Начать".

    По окончании процесса закрываем окно загрузки и переходим на следующую вкладку...

  3. Но прежде не плохо бы убедиться, что он закончился с положительным результатом. Помочь в этом деле может "Карта заполнения слоя". В этом меню нужно указать три параметра:
  4. В подменю "Формировать для..." выбрать "Как на главной карте", или тут карту, которая нужна.
    . Выбрать масштаб (на картинке стоит z19).
    . Выбрать, что показывать -- существующие тайлы или отсутствующие. Если выбрать отсутствующие -- именно они изменят тон на более тёмный, если существующие (как на картинке) -- потемнеют они.

    Убедившись в равномерности заполнения слоя можно двигаться дальше...

    Но прежде, для прояснения тонкостей и во избежание возможных проблем, хочется процитировать маленький FAQ по загрузке, взятый на форуме программы:

    . При загрузке некоторых карт (обычно Google) сперва все идет нормально, а потом мне говорит что "Такого изображения нет на сервере", хотя при просмотрте в браузере этот регион прекрасно показывается. Что это?!

    ЭТО НЕ БАГ ПРОГРАММЫ SAS.Planet - это называется "бан на сервере", и им обычно грешит именно Google.
    После примерно 1000 загруженных тайлов сервер обычно банит по IP. в программе реализована некоторая защита от бана (путем задержки закачки тайлов), но 100% гарантии это не дает. Основной инструмент, которым пользователь может управлять баном - параметр Sleep в zmp-файле. Таким образом, если после 10 минут работы с программой больше ничего не загружается - поздравляем! Вас забанили, и единственный выход - ждать сутки (иногда меньше), больше ничего делать не надо. После этого времени всё встает на свои места, и можно опять начинать качать (до следующего бана). 100% гарантированного обхода бана в программе SAS.Planet пока что нет.

    . При загрузке карт мне говорит что "Такого изображения нет на сервере", хотя при просмотрте в браузере этот же регион прекрасно показывается. Что это?!

    ЭТО НЕ БАГ ПРОГРАММЫ SAS.Planet - это называется "на сервере сменили версию карт".
    Для решения этого вопроса Вам надо открыть файл ZMP соответствующей карты, найти в нем строку "DefURLBase=" (например, DefURLBase=http://mt.google.com/mt?v=w2p.99&hl=ru) и заменить в нем имеющиеся цифры версии (например, "w2p.99") на актуальную на настоящий момент версию на сервере. Сохранить изменения и рестартовать программу SAS.Planet.
    Автоматического отслеживания смены версий карт в программе SAS.Planet пока что нет.

    . При загрузке карт в браузере - я вижу новые районы и обновленные карты, а при закачке программой SAS.Planet - я этого не вижу, на той же карте!!! Как так может быть?

    ЭТО НЕ БАГ ПРОГРАММЫ SAS.Planet - это называется "на сервере используют более новую версию карт".
    Действия по изменению версии карт в программе SAS.Planet на актуальные - описаны пунктом выше.

    . Хочу всегда иметь самые свежие версии zmp!

    Если очень хочется - можно воспользоваться средствами Mercurial и командных файлов. Подробнее https://bitbucket.org/sas_team/sas.maps/wiki/Home

    . Мои карты очень медленно грузятся!!!

    Если у вас карты грузятся много медленнее чем в браузере на сайте - это может быть потому, что в файле xxxxx.zmp для соответствующей карты параметр Sleep (задержка перед загрузкой каждого последующего тайла) равен по умолчанию какому-нибудь положительному значению (например, Sleep=1000). Это сделано для попытки обойти бан данной карты. Можете уменьшить этот параметр, или вовсе поставить 0 (но тогда возрастет вероятность бана).

    . Мне постоянно сообщает "Отсутствует подключение к Интернет!", хотя подключение есть

    Проверьте Ваш файрвол (включая встроенный в Windows) на предмет блокирования соединений программы SAS.Planet, а также общие настройки Интернета в самой программе. Особенно это касается случаев с прокси-сервером.
    Программа SAS.Planet не использует каких-то специальных своих собственных режимов доступа к Интернету, и используются сугубо возможности Вашей операционной системы и окружения. Если у Вас работает интернет-браузер - то заработает и SAS.Planet. Если же что-то блокируется при работе SAS.Planet - проблема безусловно на Вашей стороне.

    . Почему я вижу детальные снимки нужного мне региона в программе Google.Земля, а при просмотре этого региона через SAS в карте Google - я их не вижу?

    ЭТО НЕ БАГ ПРОГРАММЫ SAS.Planet.
    Google.Земля - совершенно другой сервис, чем сервис Google.Карты (где SAS при своей работе использует именно сервис Google.Карты, но не Google.Земля). Общее у этих двух лишь одно - владелец (компания Google), все остальное - совершенно различное, включая логику работы, проекции карт и собственно серверы, откуда идет контент.
    Но есть и надежда: обычно обновления регионов в Google.Земля со временем перекочевывают и в Google.Карты, и тогда они могут стать доступны и в программе SAS.Planet. Обычно это занимает что-то в районе месяца-полутора. Иногда больше, иногда меньше. Иногда - никогда. Гарантии, возможности, точные сроки конкретных обновлений в обоих сервисах и степень их "взаимопроникновения" друг в друга известны только владельцу - Google, но никак не разработчикам программы SAS.Planet.


  5. Ну и финальная вкладка "Склеить":
  6. Начинаем заполнять поля:

    7.1. "Результатирующий формат" -- из выпадающего списка выбираем "KMZ for GARMIN".
    7.2. "Куда сохранять" -- выбираем папку и даём название файлу.
    7.3. Проверяем "Тип карты"
    7.4. Не забываем поправить "Масштаб"


    7.5. Поле "Наложить" и проекцию к нему оставляем пустыми.
    7.6. Так же не ставим никаких галочек напротив пунктов "Применять коррекцию изображений" и "Накладывать отображаемые метки" (если последние не нужны конечно). Если есть пункт "Сохранять PNG с прозрачностью" (v.121010) -- снимаем выделение -- здесь эти картинки точно не нужны.
    7.7. И в поле "Создавать файл привязки" тоже ничего не ставим -- привязка KML у нас внутри KMZ-файла.


    7.8. "Качество для JPEG и ECW" оставляем по умолчанию -- "95"
    7.9. Смотрим на строчку "Количество файлов", где видим такие значения "49х28(1372), размер: 12353х6785"
    Количество реально скаченных тайлов нас не интересуют, они не нашего размера. В задачу программы входит их сначала склеить, а потом порезать по KMZ-шаблону. Поэтому нам важны только последние значения.
    Мы помним, что размер нашего тайла не должен превышать 1024 пикселя по каждой из сторон. Именно на такие квадратики нам нужно разрезать карту размером 12353х6785 пикселей. Достигается это путём не сложных арифметических вычислений, где каждую цифру нужно поделить на 1024, а любой результат обязательно округлить до бо́льшего значения. Так получаем цифры 13 по горизонтали и 7 по вертикали (обычно я предпочитаю с калькулятором не возиться и для простоты делю на 1000)

    Всё, нажимаем "Поехали" и после окончания склейки...

    Идём проверять свои файлы:


В заданные параметры мы вроде уложились -- получился 91 файл, средний вес которого около четверти мегабайта. Прошу заметить, что SAS.Планета заботливо пронумеровала файлы по квадратикам-тайлам. Это пригодится на тот случай, если их количество перевалит через лимит и было бы легче их сортировать.

Ну что, осталось только залить их в прибор, путь до \Garmin\CustomMaps уже заказан:)

С туристической навигацией в России наблюдается некоторый диссонанс. Нам доступны самые навороченные GPS навигаторы, но у нас нет хороших туристических электронных карт. По ленинградской и московской областям есть неплохая картография от официального дилера Garmin, но когда дело касается отдаленных районов нашей необъятной, то простому туристу приходится довольствоваться «Евразией», масштаб которой оставляет желать лучшего. При этом существуют хорошие бумажные карты. Более того, среди активных туристов не редкость - засаленные ксерокопии «секретных военных карт», которые, в навигатор так просто не засунуть.

На самом деле, работать с растровыми картами позволяет старый добрый OZI. Программа ставится на девайс под управлением Windows Mobile, загружаются нужные карты нужного масштаба - и вперед по грибы, по ягоды. Все бы хорошо, но карманный компьютер сложно считать надежным туристическим прибором. Отчасти, проблему решает аквапак и самодельное внешнее питание из нескольких батареек, перемотанных синей изолентой. Добавьте к этому самодельное же велокрепление из двух дощечек и куска проволоки, и вы получите супер-навигатор в лучших традициях отечественных кулибиных.

Хочется цивилизованного решения. Чтобы батарейки вставлялись в сам навигатор, влагозащиту обеспечивал корпус, а аксессуары вроде креплений и чехлов можно было купить в магазине, а не сделать дома из подручных материалов. Спешим обрадовать, Garmin наконец-то позаботился о тех, кто по необходимости или в виду других причин предпочитает векторым картам растровые. Загрузку растровых карт поддерживают навигаторы Garmin с сенсорным экраном. В качестве теста мы решили загрузить растровую карту в навигатор Garmin Oregon 200.

На дворе - не май месяц, и мысль о туристической вылазке в сторону Выборга или Приозерска не очень-то радует автора статьи, привыкшего к городскому комфорту. Для лабораторных исследований мы ограничимся картой центра Петербурга, найденной в Google по запросу «Карта Петербург». Не будем переживать из-за того, что найденный материал по подробности уступает картам «Дороги России». Задача - получить на экране прибора нашу картинку, а не стандартную векторную карту.
Исходная растровая карта для загрузки в навигатор Как загрузить растровую карту в навигатор Garmin (пошаговое руководство)

0. Обновление ПО навигатора

Старые версии ПО не позволяют работать с растровыми картами, поэтому будет нелишним обновить прошивку прибора. Это делается при помощи официальной программы WebUpdater. Навигаторы серий Colorado, Oregon и Dakota можно обновлять смело, русификация не потеряется. Важно, чтобы в приборе стояли достаточно свежие батарейки или заряженные аккумуляторы. Сама прошивка начинается после того, как навигатор будет отключен от компьютера. Нехватка питания может привести к тому, что придется нести прибор в сервис.

Обновление ПО навигатора

1. Подготовка изображения

Прежде чем карту загрузить, ее нужно найти. Оставим этот пункт на вашей совести. Карта должна быть сохранена в формате jpeg. Рекомендуемое разрешение - 155 DPI для Garmin Colorado и Oregon и 110 DPI для Garmin Dakota.

Сохраняем файл карты с нужным значением DPI

2. Загрузка и установка Google Earth

Это можно сделать с . Если программа уже установлена, сразу переходите к следующему пункту.

Программа Google Earth

3. Привязка карты к местности

Пока что ваша карта понятна только вам. Навигатор и Google Earth не имеют ни малейшего понятия, что это вообще за картинка, и к какой части земного шара она имеет отношения. Чтобы превратить картинку в карту нужно ее привязать. Мы рассмотрим русскоязычную версию Google Earth, справедливо полагая, что знатоки английского языка могут обойтись англоязычной инструкцией по загрузке.

Следующие действия можно выполнять несколько иначе, но, как нам кажется, такая последовательность действий будет достаточно удобной.

Найдите в программе ту часть земного шарика, карту которой вы хотите загрузить в прибор.

Выбираем нужное место в Google Earth

Загрузите картинку при помощи пункта меню «Добавить», «Накладываемое изображение».

Загружаем изображение с картой

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

Окно свойств накладываемого изображения

Мышкой наложите изображение на местность. Чем точнее будет проделана эта процедура, тем точнее будет ваша карта. Картинку можно увеличивать и уменьшать, поворачивать (зеленый ромбик возле одной грани) и перемещать (зеленый крестик посередине изображения).

Подгоняем размеры и положение наложенной карты

Слева на панели программы «Метки» вы увидете название наложенного изображения. То название, которое вы дали при загрузке картинки. Щелкните по нему правой клавишой мыши и выберете пункт «Сохранить местоположение как…».

Сохраняем привязанную карту в отдельный файл

Когда откроется окно сохранения изображения, проверьте, чтобы был выбран тип файла.kmz

Собственно, на этом манипуляции по подготовке карты закончены. Осталость только загрузить полученный kmz-файл в память навигатора. Файлы с растовыми картами загружаются в папку./Garmin/CustomMaps/ на SD-карточку или во внутреннюю память прибора

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

Теперь самое интересное. Посмотрим, как эта карта выглядит на экране. Кроме растровой карты, в навигатор была загружена «Дороги России. Топо». Мы видим, что обе карты наложились друг на друга, можно видеть растровую карту и, при этом, прокладывать маршрут по карте векторной. По сравнению просто с «ТОПО», наблюдается некоторое торможение. Если использовать только растровую карту, отключив все остальные, то навигатор работает очень шустро.
Слева - растровая карта на экране навигатора, справа - растровая карта с наложенными поверх дорогами из карты «Дороги России. ТОПО» и проложенным маршрутом.

Ограничения

Есть некоторые технические ограничения на размер карты.

  1. Размер файла с картой не должен превышать 32 Мб
  2. Растровая карта в навигаторе хранится в виде тайлов - отдельных фрагментов одного большого изображения. Так вот, количество таких кусочков не должно превышать 100, а разрешение каждого тайла должно быть не более 1024×1024 пиксела.
  3. Если вы загружаете несколько растровых изображений, то ограничения остаются такими же для всех изображений. Т.е. характеристики суммируются и не должны превышать указанные в 1 и 2 пункте значения.

Перспективы использования растровых карт в туристических GPS навигаторов вполне ясны. Эдак можно любое изображение в навигатор засунуть, будь до сверхсекретная ксерокопия военных карт или отсканированная с форзаца старой книги карта Средиземья. А если без шуток, то для российского пользователя туристическая GPS навигация вышла на принципиально новый уровень. Теперь можно смело отправляться в поход исключительно по навигатору. Особенно, если маршрут заранее нарисован в том же Google Earth. Удачных путешествий!

Как известно, навигаторы Garmin нижеследующих моделей

Alpha
Astro
Dakota
Oregon
Colorado
GPSMAP 62 series
GPSMAP 78 series
Edge 800
Montana
Rino
eTrex 20 and 30

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


Сравнение различных форматов карт в сухо-цифровом виде: http://whiter.brinkster.net/JNX.shtml

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

Достигнув понимания, что с форматом kmz каши не сварить, решил начать работать с форматом *.jnx
Штатная прошивка навигаторов, поддерживающих растровые карты, имеет программное ограничение - чтобы пользоваться картами jnx, необходимо оформить платную подписку на официальный гарминовский сервис BirdsEye, и загружать карты только через него. Чтобы снять это ограничение, прошивку прибора необходимо пропатчить.
Вмешательство в штатную прошивку, разумеется, лишает владельца официальной гарантии на прибор - но, во-первых, гарминовское железо достаточно надежно; во-вторых, мой прибор был куплен в Штатах и российской гарантией осчастливлен не был

Перепрошивка прибора

Нам понадобятся:
- патчер, который можно скачать по ссылке http://whiter.brinkster.net/Versions.shtml
- официальная гарминовская программа WebUpdater, которую можно скачать по ссылке http://www8.garmin.com/support/download_details.jsp?id=931

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

1. Подключив прибор к компьютеру, запускаем программу WebUpdater. Далее возможны два варианта

1а. Прошивка вашего прибора соответствует новой актуальной версии, и WebUpdater не запускает процесс обновления прошивки. В этом случае скачиваем старую бета-версию обновления по ссылке http://u.to/yDEEAg и устанавливаем ее на прибор:

Теперь запускаем программу WebUpdater, начинаем процесс обновления. Результатом его будет файл GUPDATE.gcd, созданный программой в директории Garmin на приборе. Не отсоединяя прибор от компьютера, и не выключая его, переходим к пункту 2

1b. Прошивка прибора устарела, и допускает обновление. В этом случае запускаем процесс обновления. Результатом его будет файл GUPDATE.gcd, созданный программой в директории Garmin на приборе. Не отсоединяя прибор от компьютера, и не выключая его, переходим к пункту 2

2. Вырезаем полученный на приборе файл GUPDATE.gcd и вставляем его на компьютер. Запускаем патчер, скачанный ранее. Клавишей Browse указываем ему на файл GUPDATE.gcd

Результатом будет созданный патчером в той же папке файл GUPDATE_Patched.GCD

3. Полученный пропатченный файл GUPDATE_Patched.GCD переименовываем в GUPDATE.gcd и вставляем на прибор вместо вырезанного файла

4. Отсоединяем прибор от компьютера, включаем. Запускается процесс обновления программного обеспечения прибора. Результатом его будет новая актуальная версия прошивки, пропатченная для неограниченного использования карт формата *.jnx

Создание пользовательских карт в формате *.jnx

Нам потребуется программа SAS.Planet, которую можно скачать по ссылке: http://sasgis.ru/sasplaneta/
Данная программа позволяет работать со спутниковыми снимками google, yandex, bingmaps, с картами генштаба и некоторыми другими источниками. Продукт на выходе - карты в различных форматах, имеющие привязку к координатам и готовые к загрузке в прибор

1. Открыв нужную область, выбираем требуемую карту (закладка "Карты")

2. Вкладка "Операции" - "Операции с выделенной областью" - выбираем требуемую часть карты

3. Поялвяется отдельное окно "Операции с выделенной областью", нам нужна вкладка "Загрузить"

4. Выбираем требуемый масштаб (оптимальный - Z17 - Z18), снимаем галку "Закрыть окно после старта", ставим галку "Пытаться загружать отсутствующие тайлы", нажимаем клавишу "Начать"

5. По окончании загрузки переходим во вкладку "Экспорт"

6. Выбираем тот же масштаб, что и при загрузке карты, выбираем место сохранения и название файла (латиницей), выбираем формат экспорта - JNX растровая карта для Garmin, нажимаем клавишу "Начать"

7. На дополнительной карте памяти прибора в папке Garmin создаем папку BirdsEye и копируем в нее полученную карту. Не забываем включить пользовательские карты в меню прибора

Результаты

Стандартная карта прибора

Загруженные космоснимки

После описания Гарминовской инструкции по созданию растровых карт возникает немало вопросов, а именно:
-Как закачать спутниковые карты, чтоб в них отсутствовали служебные символы и рисунки "Планеты Земля"
-Как разбить карты на фрагменты размером 1024*1024 максимум каждый, а также контролировать максимальное количество этих файлов
-Как автоматизировать процесс создания фрагментов и их привязки в программе "Планета Земля"

Естественно это вопросы появились в попытках ответить людям на возникающие вопросы, очередная такая работа заставила задуматься и попробовать написать по свежим следам воспоминаний небольшую инструкцию....

Почему сразу не написал? Да все просто, программы которые раньше использовал меняются, кое-где появляются новые возможности, в общем на данном этапе сей процесс у меня выглядит так.

1. Закачка картинок и создание kmz файла
Есть такая совершенно бесплатная програмка, называется SASPlanet. Находятся она тут http://sasgis.org/download/ и скачать ее можно там-же.
Прелесть данной програмки в том, что она позволяет скачивать снимки не только Google карт, но и с кучи разных других источников. Причем скачивает их с возможностью задать на сколько фрагментов делить, и создавать ли дополнительные файлы привязки!!! Вот эти картинки совершенно лишены лишней информации, они закачиваются пакетом, т.е. сразу можно качать приличные объемы, можно задать уровень детализации, сгенерируются базовые файлы привязки, которыми можем воспользоваться, а главное может сразу создать kmz файл для навигатора!!!

Посему, качаем програмку, а точнее архив и распаковываем его на своем компьютере. Запускаем SASPlanet и первое что необходимо сделать, это выставить параметр в меню "Источник\Интернет и кеш", т.е. чтобы карты брались и с интернета, если они отсутствуют, и из кеша, если они уже были закачаны на компьютер.

Далее следует поиграть с програмкой, т.е. посмотреть карты, какие они с того или иного источника (меняя меню "Карты") дабы определиться что Вам больше всего подходит. Во многом работа с программой схожа с Планетой Земля.

Вот если вы определились с какой картой Вам интереснее и какой именно участок Вам нужен в навигатор, то тогда:

Поувеличивайте карту, чтобы понять какой уровень детализации вам необходим, уровень детализации отображается в нижнем правом углу программы, на данной картинке, как видно, он составляет 5x, запомнили это число.

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

Выделяем на карте нужную нам область

Появится вот такое меню


Выставляем тип карты на тот тип который вам понравился.
Масштаб ставим на число, которое мы запомнили как уровень детализации.
Проверьте что пункт "Пытаться загружать отсутствующие тайлы" отмечен галочкой.

Теперь нам немного надо подумать. Мы видим, что ниже под типом карты, программа нам дала разрешение картинки, в данном примере оно составляет 14336x12800 точек. У нас существуют в навигаторе следующие ограничения: размер файла может быть не больше 1024x1024 (естественно меньше можно, к примеру 900x200), общее количество таких файлов может быть не более 100.
Т.е. в данном конкретном случае, мы никоим образом не влазим в действующие ограничения. Тут два выхода, либо пометить меньшую территорию, либо выбрать более слабый уровень детализации. Если я сейчас установлю детализацию на один уровень меньше, т.е. 13, то получу разрешение картинки равное 7168x6400.
Вот 7168x6400 всполне подходят, ибо если мы картинку поделим например по горизонтали на 8 частей, а по вертикали на 7, то получим 896x915, что вполне влазиит в ограничение по размеру файлов, а количество файлов получится 7*8=56, что удовлетворяет условию, когда количество файлов должно быть не более 100.

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

Появится вот такое меню, после окончания загрузки просто нажмите "Выход"

Мы закачали все нужные нам карты, теперь продолжаем, для этого надо снова вернуться к помеченой области, для этого просто выберите меню "Предыдущее выделение"


и, таким образом, мы вернулись к знакомому нам диалоговому меню

В этом диалоге выбираем закладку "Склеить"


Выберите результирующий формат как показано, т.е. создание "Kmz для Garmin".
Укажите путь сохранения и имя файла.
Выставьте правильный масштаб.

Поехали! Нажимаем "Начать" и програмка создаст kmz файл, внутри которого будут содержаться картинки карт, разбитые на части!!!

Все!!! То, что нам нужно было от программы SASPlanet мы получили, осталось лишь скопировать файл карт в навигатор (каталог /Garmin/CustomMaps/).
Единственно отмечу, не стоит давать kmz файлу имя русскими буквами, такой файл навигатор просто не увидит.

2. Редактирование карты
Есть ситуации, когда необходимо подправить картинки карт. У меня, например, получилась карта, дома которая выглядела нормально, а реально на водоеме ее читаемость оставляла желать лучшего, и в следующий раз я просто обрисовал сушу коричневым, а воду голубым, тем самым увеличив контрастность между объектами и повысив читаемость. Подобных причин может быть множество. Поэтому приведу руководство, как-же поредактировать готовый kmz файл.

Kmz файл представяет собой обычный Zip архив. Нужно настроить оболочку Windows, чтобы она позволяла видеть и изменять расширения файлов. Меняем расширение нашего файла на zip, и тогда файл можно открыть как архив и вытащить из него все содержимое.

Разархивируем наш файл в пустой каталог. Мы получим в нем:
doc.kml - текстовый XML файл привязок картинок к координатам.
files - каталог, в котором содержатся все картинки в формате jpg

Вот теперь берем и редактируем любые картинки в каталоге files. Главное не изменять имена файлов и не изменить размер картинок.
Для проверки как это будит выглядеть, можно программой Планета Земля открыть файл doc.kml, а он загрузит картинки. Как только, мы убедимся, что все нужные изменения сделаны, достаточно запаковать в zip архив файл doc.kml и каталог files с содержимым, после чего изменить расширение архива с zip на kmz.

Являясь около полугода владельцем устройства "Garmin" конечно же, я с любопытством начал изучение сего девайса. И по пути, столкнулся с тем, что ответов и инструкций, понятных для того, кто впервые держит навигатор в руках не так уж и много. Изучив N-ное количество сайтов и форумов, я постарался собрать здесь единую "инструкцию по применению". Список источников информации приведен в конце статьи.

    Краткое содержание:
  • Создание/склейка и обрезка растровых карт в формате KMZ с помощью Global Mapper. Для тех, кто боится потерять гарантию.
  • Создание карт в формате KMZ с помощью SASPlanet. Для тех, кто боится потерять гарантию.
  • Создание многослойных карт в формате JNX с помощью SASPlanet. Для пропатченных устройств.
  • Создание и добавление карт в кэш SASPlanet, если таковые отсутствуют в программе, но есть где-либо.
  • Модификация прошивки устройства, для возможности бесплатной работы с картами JNX.

Склейка и обрезка растровых карт в формате KMZ с помощью Global Mapper

В открывшемся окне, выбираем папку, куда были скачаны карты и файлы привязки, выбираем формат "Ozi Explorer Map files (map.)". Выделяем файлы привязки и нажимаем открыть.


В результате получается вот такая, склеенная из нескольких листов карта. Для примера сшиваю 250-метровую карту ГГЦ. Теперь нужно удалить/обрезать поля с ненужными цифрами и координатами. Для этого во вкладке "Инструменты" выбираем "Центр управления". Откроется окно, в котором нужно выделить все листы карты. Далее нажимаем "Настройки".

Далее нужно сохранить получившуюся карту в формат KMZ. Для этого нажимаем “Файл/Экспорт/Экспорт растров”. В окне экспорта выбираем KML/KMZ. Далее в появившемся окне на вкладке “KML/KMZ настройки” выбираем настройки экспорта (В источнике автор предлагает выбрать “PNG” и размер 512х512 для более быстрой прогрузки карты в устройстве. Тут необходимо учитывать тот факт, что у приборов Garmin существует ограничение по фрагментам – изображениям, на которые разбивается карта при конвертации. В большинстве это 100 шт. К тому же мой Dakota, почему то отказывается видеть формат ”PNG”, поэтому я выбирал “JPG” и в окнах справа и снизу игрался с качеством и разрешением.)

Пункт 4 нужен для тех, у кого на готовой карте при просмотре, на месте обрезанных полей появляется кайма. Во вкладке “Экспорт границ” ставим точку в пункте “Широта/Долгота, град.” Готово! Получившийся файл можно открыть в программе Google Earth и посмотреть как он ложится на рельеф.

Создание карт в формате KMZ с помощью программы SASPlanet

Скачать программу можно с официального сайта, установка не требуется. Клеить карту для примера, буду на основе топо-карт генштаба с сайта: маршруты.ру. Запускаем программу. Перемещаемся в нужное нам на карте место. Например: Слюдянку. Далее выбираем тип отображения: на выбор предоставлены всевозможные сервисы с картами и спутниковыми снимкам.

Приступим к созданию полигона – выделению области (которая и будет являться вашей картой). Нажимаем ”Операции с выделенной областью” и выбираем подходящий вариант, например “Полигональная область”. Затем с помощью мышки выбираем любой интересующий нас участок. Мини-панель справа от выделенной области нужна для управления выделением. Закончив выделение, нажимаем галочку на мини-панели. Появляется окно “Операции с выделенной областью”. Не будем пока ничего в нём заполнять, а отодвинем в сторонку, чтобы не мешалось. Хотя можно и просто закрыть. Оно снова откроется по сочетанию клавиш "Ctrl+B" или выбором пункта "Предыдущее выделение" в том же меню.

Но, ни Яндекс, ни Гугл, ни кто либо другой, не заказывают спутниково-космических снимков различной степени детализации для каждого своего уровня. Это было бы слишком дорого, да и не совсем разумно. Поэтому другие масштабы формируются из снимков

  • Или путём 2-х кратного сжатия, когда 4 стандартных тайла/фотографии по 256х256 пикселей (512х512) превращаются в один тайл 256х256 более верхнего уровня
  • Или наоборот (но реже), увеличивая тайл в 2 раз (качество от этого, к сожалению, не улучшается)
Если мы возьмём бумажные карты (Генштаб, ГГЦ и проч.), то для них реальный уровень всегда один (одна карта – один масштаб), а остальные уровни формируются по такому же принципу.

Когда в мануале будет заходить речь о верхнем уровне отображения, о верхенем уровне перехода и вообще о верхнем уровне, то имеется ввиду маленький Зум (z1 – самый маленький) и мелкий масштаб (1: 500 000 = в 1 см. – 5 км. мельче, чем 1: 50 000 = в 1 см. – 500 м.). Если вам будет легче усвоить, то представите себя поднимающимся на воздушном шаре – чем выше вы над уровнем земли, тем меньше масштаб "карты-земли". Верхний уровень – выше над землёй, понижаем уровень – опускаемся на землю. Грамотно как с точки зрения логики, так и юзабилити интерфейса устроен сервис Яндекс Карт – кнопочка "+" у них находится вниз.

В Google-сервисах и в SASPlanet ползунок надо тянуть вверх – повышать масштаб. Но понижать уровень. Так вот, в картах KMZ верхнее и нижнее ограничения на уровень отображения задаётся стандартом и зависит от того, из которого склеена карта. Допустим мы взяли снимки уровня, которому соответствует масштаб километровки (z15). Когда мы зальём их в навигатор, то наша карта включится на масштабе 3 км (верхний уровень), а выключится только на 20 метрах (нижний уровень). То есть, при цифровом масштабировании реальное изображение будет уменьшаться только в 4 раза (что не плохо), а увеличиваться в 16 (жопа из пикселей). Хотя мы помним, что при переходе на один уровень вниз (тем увеличиваем масштаб) количество тайлов при заданном размере увеличивается квадратично (километровка делится на четыре 500-метровки), уменьшая в 4 раза доступную площадь покрытия, но мне кажется, не стоит сильно гнаться за увеличением площади карты, а лучше выбирать уровни, соответствующие если уж не максимальному качеству снимка, то близким к нему. Просто потому, что экраны навигаторов не ретина-дисплеи смартфонов, несовершенство проще добить SD-картами, которые подешевели до каких-то неприличных цифр – за 2 Gb просят всего 100 рублей... Но как бы то ни было, картами уровня "z19" можно покрыть около 12 кв.км площади, учетверяя её каждым щелчком уменьшения масштаба.

Как определить "правильную" картинку? Как ни странно, самый оперативный способ – чисто визуальный. Правда нужна некоторая сноровка. Если подходить субъективно, то слой перед последним кажется самым резким, а следующий немного пиксельным, растянутым. Но обычно такой эффект создаёт "цифровой шум", присущий электрическим фотографиям – а на самом деле он и есть наш "правильный".

Чтобы отключить несуществующие уровни в SASPlanet, нужно в меню "Вид" снять галочку напротив строчки "Брать карты из меньших масштабов" и отсутствующие тайлы выводиться не будут.

Возвращаемся в окно "Операции с выделенной областью". Оно сразу откроется на вкладке "Загрузить". Во вкладке “Загрузить” в выпадающем меню выбираем наш источник карты. (Не обязательно тот же, в котором, мы просматриваем карту в программе.) Выбираем необходимый зум в колонке справа 1-24. Нажимаем “Начать”.

По окончании процесса закрываем окно загрузки и переходим на вкладку “Склеить”. Но прежде не плохо бы убедиться, что он закончился с положительным результатом. Помочь в этом деле может "Карта заполнения слоя". В этом меню нужно указать три параметра: В подменю "Формировать для..." выбрать "Как на главной карте", или ту карту, которая нужна. Выбрать масштаб. Выбрать, что показывать – существующие тайлы или отсутствующие. Если выбрать отсутствующие – именно они изменят тон на более тёмный, если существующие (как на картинке) – потемнеют они.

Убедившись в равномерности заполнения слоя можно двигаться дальше. Во вкладке “Склеить” выбираем: "Результирующий формат" – выбираем "KMZ for GARMIN". "Куда сохранять" – выбираем папку и даём название файлу. Проверяем "Тип карты". Не забываем поправить "Масштаб". Поле "Наложить" и проекцию к нему оставляем пустыми. Так же не ставим никаких галочек напротив пунктов "Применять коррекцию изображений" и "Накладывать отображаемые метки" (если последние не нужны конечно). Если есть пункт "Сохранять PNG с прозрачностью" (v.121010) – снимаем выделение – здесь эти картинки точно не нужны.

И в поле "Создавать файл привязки" тоже ничего не ставим – привязка KML у нас внутри KMZ-файла. "Качество для JPEG и ECW" оставляем по умолчанию – "95". Смотрим на строчку "Количество файлов", где видим такие значения "49х28(1372), размер: 12353х6785".

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

Мы помним, что размер нашего тайла не должен превышать 1024 пикселя по каждой из сторон. Именно на такие квадратики нам нужно разрезать карту. Достигается это путём не сложных арифметических вычислений, где каждую цифру нужно поделить на 1024, а любой результат обязательно округлить до бо́льшего значения. Так получаем цифры хх по горизонтали и хх по вертикали.

Нажимаем “Начать” и ждём окончания процесса. Готово!

Создание многослойных карт в формате JNX с помощью SASPlanet

Кратко о формате JNX
Файлы в формате JNX используются в устройствах Garmin для показа спутниковых карт, доступных через подписку “BirdsEye”. В навигаторах эти файлы располагаются в папке “Garmin\BirdsEye” на внутреннем диске или SD-карточке. JNX – так называемый “тайловый” формат, то есть большое растровое изображение в карте разбито на меньшие прямоугольные части для ускорения показа навигатором. Поддержка карт JNX имеется в следующих устройствах: Alpha 100, Astro 320, Colorado 300/400, Dakota 10/20, Edge 800, Etrex 20/30, GPSMAP 62/78, Montana 600/650, Oregon 200/300/400/450/550, Rino 610/650/655.

Существенным ограничением формата JNX является жесткая привязка карт к устройству.

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

Хотя файлы в формате JNX содержат код привязки к устройству, известны два способа использования собственных карт JNX в навигаторах Garmin.

Первый способ:
Можно пропатчить прошивку устройства таким образом, чтобы снять ограничение на количество показываемых демонстрационных карт и их площадь.

Второй способ:
Если у вас оформлена подписка “BirdsEye”, можно воспользоваться “BaseCamp” для активации собственных карт JNX. Для этого достаточно сделать карту одним из конвертеров, загрузить полученный файл JNX в устройство, затем запустить “BaseCamp” и скопировать карту с устройства в коллекцию. После этого карту можно будет послать обратно на устройство, при этом “BaseCamp” активирует карту и привяжет её к устройству. Этот метод сработает только в том случае, если устройство связано с подпиской “BirdsEye”.

Внутренняя структура файлов JNX
Описание формата получено в результате экспериментов с файлами JNX, полученными от добровольцев.

    Файл формата JNX можно условно разделить на 7 частей:
  • 1. Заголовок.
  • 2. Таблица с описанием уровней.
  • 3. Служебная информация загрузчика карт.
  • 4. Таблица с описанием тайлов.
  • 5. Сигнатура.
  • 6. Набор тайлов.
  • 7. Метка конца файла.

Запускаем программу и находим нужный регион. Далеко ходить не будем, возьмём ту же Слюдянку. Если для карт KMZ нам нужно было выбрать один уровень и один источник для него, то сейчас можно пофантазировать(формат JNX позволяет использовать до 5-ти разных слоёв в одной карте). Но перед этим не плохо бы проверить, кто что предлагает на данную территорию. Побродив по меню Карт, я выбрал три уровня. На нижнем (z18) у нас будут лежать всё Google спутник, в серединке "бумажный" ГГЦ на 250 м (z16), чтобы не заблудиться, а в самом верху (z14) разместим Генштаб на 2км.

Далее как в предыдущем пункте – создание карт в формате KMZ с помощью SASPlanet. (Выделяем нужную область, и выкачиваем карту,из нужных нам источников с “правильным” зумом (т.е. в моём примере скачиваем Google спутник, когда загрузка закончится в том же окне выбираем след. источник – 250метровые ГГЦ с Маршруты.ру, выкачиваем, повторяем процедуру для 2км Генштаба). Не забыв потом убедиться с помощью "Карты заполнения слоя", что все выбранные тайлы на месте. После этого уже начинается область неизведанного – вкладка "Экспорт" в окне “Операции с выделенной областью”.

Но перед тем, как наполнять её значениями, надо немножечко разобраться – как, чем и почему. Представьте, что перед вами лежит стопка карт одной и той же местности. Чтобы рассмотреть более детально какой-то квадрат, вы просто откладываете в сторону лист с мелким масштабом и переходите к следующему. Сначала 10-ти километровку, потом 5-ти, потом 2, потом 1, потом 500 метров... В навигаторе же детализация может происходит более плавно, потому что градация масштабов более расширенная. И увеличивая масштаб, какое-то время вы всё равно будете рассматривать всё ту же карту.

В родных JNX-картах, полученные по подписке BirdsEye, содержатся уровни со значениями масштабов, заданных некими целыми числами разной величины. Что они означают на самом деле – науке до сих пор неизвестно и остаётся тайной гарминовских программистов. Но умные люди на их основе придумали свою, расширенную последовательность, которая и используется во всех приличных программах, способных к компиляции JNX-файлов. В SASPlanet эта шкала цифр переведена в удобный нам метрово-километровый формат.

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

Давайте рассмотрим простую ситуацию, когда в нашей коллекции карт не хватает одного листа. К примеру, куда-то затерялся лист 500-метровки, а в наличии только километровка и 250 метров. На бумаге, как уже говорилось, сделать это просто – отложим один лист и сразу перейдём на другой. Навигатору же придётся проделать более длинный путь – пройти уровни 800 м., 500 м. и 300 метров. А нашей задачей, при создании подобной карты, является указать ему, на каком уровне "выключить" одну и включить другую.

Казалось бы решением, лежащим на поверхности, является – всё взять и поделить. Поровну. = 500. Но людям, имеющим дело с фотографиями, не менее логичной показалась бы цифра 800 – всё лучше смотреть на уменьшенную в 4 раза 250-ти метровку, чем на пиксельную километровку. Только правильная цифра – 300. А чтобы понять, почему так, рассмотрим один, совсем не гипотетический случай.

Предположим, что в ваш навигатор залиты карты двух соседних квадратов. Одну делали вы и сделали её двухуровневой. Потому что куда-то затеряли свой 500-метровый лист, а "точкой перехода" назначили уровень в 500 метров. А на другой квадрат вам дал друг (или скачали из интернета) и в ней наличиствуют все 3 уровня с правильными переходами: на 800 м. для 500-метровго листа и 300 метров для 250-ти метрового.

Когда вы окажетесь на стыке этих квадратов, а их тайлы будут одновременно выводиться на экран, произойдёт вот что:

  • при значениях шкал масштаба навигатора от 2 км до 1,2 км будут выводиться километровые карты
  • при значении 800 м карта друга переключится на 500-метровку, а на вашей останется километровка
  • при значении 500 м карта друга останется на 500-метровке, а ваша переключится на 250-метровку
  • при значении 300 м карта друга перключится на 250-метровку, а ваша... а ваша исчезнет навсегда вплоть до 5-ти метровой шкалы

Честно скажу – я не знаю, баг это или фича, но если для карт одного уровня (в нашем случае 250-ти метровка) установить разные значения для верхнего уровня отображения, назовём её "точкой перехода", то карты с большими значениями перестанут отображаться. При условии, что они одновременно видны на экране конечно. В одной карте одним файлом такое сделать, разумеется, невозможно. Но для двух соседних карт – запросто.

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

  • для 250-ти метровки это будет 300 м
  • для 500-метровки – 800 м
  • для километровки – 1,2 км
  • для 2-х километровки – 3 км
  • для 5-ти километровки – 8 км
  • для 10-ти – 12 км

Но опять же... Правила есть. Но они настолько субъективны... В одних сообществах они одни, в других могут быть совершенно другие – я про них для порядку написал. Вы же делайте, как вам удобно и считаете правильным. Это ваши карты и вам с ними жить. И нафига тогда мучаться? Попробуйте наделать разных вариантов вокруг своего дома, и прогуливаясь с собачкой (ну или за пивом там) протестируйте – как и чего. Это сложно описать правилами на самом-то деле – у каждого своё мироощущение. Если бы мне была важна в этой сборке бумажная 250-ти метровка, а на верхнем уровне только спутниковая 2-километровка, я бы плюнул на правила и поставил верхнюю точку перехода для неё на 1,2 км. – для пущего обзора окрестностей.

Так что если вдруг вы попадёте в ситуацию, когда часть карты на каких-то значениях перестала выводится на экран, при этом она точно там была и работала, то выходом из такой ситуации является только временное отключение какой-то одной, пока не нужной.

Это что касается значений верхнего уровня. Теперь перейдём к нижнему. С ним просто – его нет. Карта любого масштаба, если она лежит на самом нижнем уровне, по идее будет отображаться вплоть до предельных приземлённых значений (в Garmin – 5 м.) Для космоснимков по подписке BirdsEye это может и нормально, но если у нас на нижнем уровне окажется хотя бы километровка, то при приблежении в 5 метров экран отобразит даже не пиксель отсканированной карты, а его маленькую часть. Для таких случаев тоже придумано решение, но оно не совсем тривиальное. (В картах JNX имеется только верхнее ограничение на уровни приближения, при которых показывается тот или иной уровень карты. Скажем, если в заголовке уровня JNX прописано значение масштаба 76437, то тайлы этого уровня будут показываться при зумах от 20км до 5м. А вот возможности явно указать, что уровень должен отключаться, скажем, при достижении приближения в 1,2 км (то есть задать нижнее ограничение), форматом не предусматривается. Однако есть неявный способ введения подобного ограничения.

Чтобы отключить карту ниже некоторого приближения, требуется создать в карте еще один слой с нужным значением масштаба (для зума 1,2км это будет 4777), содержащий единственный тайл с координатами, не пересекающимися с координатами карты. Естественно, карта, в которую добавляется новый ограничивающий уровень, может содержать не более четырех обычных уровней.

В качестве изображения тайла может быть использована однопиксельная картинка, либо можно записать в файл ссылку на первый тайл из первого уровня карты. Координаты можно взять равными, скажем, 90N, 180E – это предпочтительный вариант, однако для него потребуется доделка имеющихся на сегодняшний день конвертеров. А можно просто использовать в качестве координат тайла координаты одного из углов карты – такой способ можно применять даже с доступными сейчас программами). В стремлении охватить неохватное, легко выйти за рамки, когда количество тайлов на каком-то уровне может превысить допустимое форматом. Но в SASPlanet мы не можем самостоятельно указывать размеры тайлов для JNZ-карт, как делали это с картами KMZ. Она не даст нам (надеюсь, что пока) увеличивать размеры, уменьшая количество. Но предлагает другой вариант – многотомный архив. Так что не пугайтесь, если увидите в финале вместо одного файла целых два, а то и три. Только, опять же, для меня это тоже область неведомого, таких огромных карт я не делал, но вроде как должно работать.

Возвращаемся в закладку "Экспорт". Сначала определяемся с базовыми вещами – выбираем название для карты и указываем куда мы хотим её сохранить.

Дальше на очереди вкладка "Карты". Последовательность, в которой мы будем заполнять уровни, значения не имеет, они станут правильно при любом раскладе. Мне же кажется логичным размещать карты для верхнего уровня вверху таблицы, а крупные масштабы внизу – сложнее запутаться в "точках перехода" с карты на карту. Но повторюсь – кому как удобнее.

Первым по списку идёт 2км Генштаб. Zoom 14 примерно соответствует бумажной 2-х километровке, но поскольку уровень у нас самый верхний и достаточно большой для бумаги, шкалу поставлю на 3 км. Сжимать её не буду, оставлю 95.

Вторым номером выступает бумажная 250-метровка ГГЦ, снятая с 16-го zoom"a. Карты ходовые, поэтому включу отображение на 300 метров. Сжимать тоже не буду, но при желании качество для бумаги можно умешать до 70, меньше не стоит.

Третьим нижним разместился Google субметровый спутник с 18-го zoom"a. Это много меньше стометровки на бумаге, но она мне нужна и включать я её хочу уже с 200-сот метров. Качество без изменений.

Последний этап, переходим во вкладку "Дополнительные операции". "Тип снимка (ID)". По умолчанию предлагается стандартный список, доступный по подписке BirdsEye. Но можно поставить своё. JNX-карты в приборе группируются по этому полю. Это как виртуальная папка, как библиотека. Физически все файлы карт должны лежать в папке “Garmin\BirdsEye”, но в списке установленных будут разложены по группам. Отображаться будет только буквенное значение группы и имя файла. Структура же заполнения: "цифровое значение" "пробел" "дефис" "слово латиницей". У меня указано ID – "27 – SD". Число месяца – 27, SD – SLUDYANKA. Поля "Название карты" и "Наименование" – эта информация необходима только “BaseCamp”, без неё он отказывается воспринимать самоделки. Можно оставить по умолчанию. "03" в моём случае означает комбинированные уровни.

Draw Order, порядок отображения или Z-сортировка. Эта штука имеет 101-но значение: от 0 до 100. В JNX-картах 4-ой версии, так же как и в KMZ, допускается ручная установка. Что она означает. Изначальные, и самые-самые родные для Гармина – карты векторного формата. Помимо нескольких уровней детализации он имеет многослойную структуру. Такие объекты, как дороги, тропинки, озёра, лесные массивы – все эти вещи располагаются на разных слоях (примерно, как слои в фотошопе). Значение 50 проходит по слою дорог.

Если вы хотите, чтобы поверх вашей JNX-карты отображались какие-то объекты векторной (у меня всегда стоит ТОПО), то нужно устанавливать значения < 50. По мере уменьшения значения к дорогам и тропинкам присоединятся леса и болота, реки и озёра, поля и луга... Путевые точки, треки, маршруты, POI – они находится за границей допустимых значений и отображаться будут всегда. Нажимаем “Начать” – Готово!

Создание и добавление карт в кэш SASPlanet,
если таковые отсутствуют в программе, но есть где-либо

Приведу простой пример, для Тункинских гольцов “Нилова Пустынь – Шумак – Аршан” в программе SASPlanet нет карт Генштаба 500-метрового масштаба, есть 1км и другие. Но, например, на сайте http://loadmap.net/ эти карты есть. Для создания собственных карт понадобится 2 программы: “Global Mapper” и “Satmap”.

Открываем “Global Mapper”. Открываем скачанные листы карты/ файлы привязки map. Экспортируем карту в веб. На настройках остановимся поподробнее: уровень увеличения если к примеру при экспорте он равен 15 как на скрине, то по факту получится 16, то есть на 1 больше. Номер уровня увеличения влияет на то сколько уровней будет создано (я всегда ставлю 1, оно и быстрее происходит, да и удобнее более мелкие зумы в SAS планете создавать). Формат плиток как правило я выбираю JPG с качеством 99 (PNG можно использовать при создании слоёв с прозрачностью) и ставлю галочки в отмеченных на скриншоте местах (оно существенно увеличивает скорость создания тайлов).

В левом поле окна “Импорт Google Map Tiles” ставим галочку в пункте “Все” и нажимаем “Ok”. После чего программа откроет/импортирует тот набор данных, который мы сохраняли в предыдущем шаге в “Global Mapper”.

Выбираем то, что сохранили в 6-м пункте (выбирать сам диск). В зависимости от того в каком формате мы экспортировали из “Global Mapper” и в этой программе указываем расширение. Далее нужно экспортировать кэш. Выбираем меню “Сервис/Экспорт кэша в SASPlanet” Я обычно выбираю все и уровни и слои.

Указываем куда сохранять кэш. Я пока не совсем с этим разобрался и просто сохраняю кэш на рабочий стол а уже оттуда закидываю карту в нужную категорию кэша. В данном примере у нас в программе отсутствовали 500 метровые карты Генштаба для Тункинских гольцов. Кэш я закинул в папку cache/genshtab500. Жмём “Ok” и имеем созданный, нами кэш. После закрытия “SatMap” желательно удалить 3 созданных ею файла, для того чтоб при следующем запуске кэш не смешивался и вышла нормальная карта. Чтоб их удалить я сортирую файлы по дате создания, и созданные в тот день, когда делаю карту, после её создания удаляю.

Модификация прошивки устройства, для возможности бесплатной работы с картами JNX. Вариант для тех у кого прошивка не самой последней версии. Для начала нам нужно где-то достать прошивку на наш аппарат. Самый простой и самый надёжный способ, это приготовить её самим. Для этого нам понадобится “Garmin Web Updater”, который загружаем с сайта Garmin. Устанавливаем веб-апдейтер, подключаем прибор usb-кабелем, после чего запускаем “Garmin Web Updater”. Он находит наш прибор и мы соответственно жмём "Далее". Затем мастер нас проведёт через все ступени обновления. По завершении нажимаем “Готово”, но при этом кабель не отсоединяем. Прибор продолжает оставаться подключенным к компьютеру. Теперь через проводник заходим внутрь прибора в папку “Garmin”. Находим там файлик “GUPDATE.GCD” и скопируем его на рабочий стол в заранее созданную нами папку с названием "Прошивка". Прибор всё так-же подключен к компьютеру! Скачиваем патч. Распаковываем архив в папку "Прошивка" и запускаем патч. Сначала появляется окошко Дискламера. Мы в нём нажимаем “Да” и тут-же запускается сам патчер.

Далее поступаем следующим образом: Нажимаем “Browse..” И в открывшимся окошке мы увидим нашу прошивку. Дважды щёлкаем по ней. Всё... Конечно у патчера есть ещё парочка чекбоксов для галочек, но они не влияют на работу прибора и отображение карт, поэтому останавливаться на них не вижу смысла. Всё. В папке рядом с нашей прошивкой “GUPDATE.GCD” появился файлик “GUPDATE_Patched.GCD”. Это и есть наша патченная прошивка! Её возвращаем в прибор и кладем в папку “Garmin” где и переименовываем из “GUPDATE_Patched.GCD” в просто “GUPDATE.GCD”. Только теперь отсоединяем кабель и перезагружаем, или запускаем прибор. Прошивка начнётся сразу. Всё. Прибор прошит и готов к пониманию и виденью растровых карт JNX формата!

Теперь рассмотрим другой вариант, это когда у вас уже стоит последняя версия и прибор ни в какую не желает "шиться" на патченную версию. Например, на моём Dakota стояла прошивка последней версии (5.80). Источники в интернете в основном предлагаю найти и скачать предыдущую версию прошивки, после чего откатиться на неё. И уже после действовать по вышеописанной инструкции. Но гораздо проще немного обмануть ваш прибор на этапе пропатчивания прошивки. В окне патчера, перед тем как открывать оригинальную прошивку. Нужно поставить галочку в пункте “Adjust Firmware version number”. Тем самым, я как бы обманул навигатор, сказав ему, что ставлю прошивку версии (5.81) на мою (5.80) версию.







2024 © maximum03.ru.