Карты из SasPlanet в MapNav.

Программа для создания карт для java-приложения MapNav называется — Map Creator (MapNavEditor, в простонародье – эдитор). Map Creator сам по себе позволяет скачивать и склеивать онлайн-карты из таких источников как: Google, VirtualEarth, OpenStreetMap. Но что делать если Вам приглянулась другая онлайн-карта? К сожалению, возможности добавить дополнительный онлайн-источник в Map Creator крайне ограничены. Но не нужно отчаиваться, есть такая замечательная программа как Sas.Planet. В настоящее время с помощью Sas.Planet можно выкачать почти любую онлайн-карту. Итак, что же делать для того чтобы скачанная SAS.Планетой карта, стала картой для навигационной программы MapNav (Мобильный навигатор карт)?

Переписывать мануал Sas.Планеты у меня нет никакого желания, так что будем считать, что Вы «в курсе». Те кто «не в курсе» идут сюда — sasgis.org/wikisasiya/doku.php и читают. Итак продолжим…

Способ первый: В программе Sas.Planet выделяем интересующий Вас участок карты (область, город, и т.п.). Выделение может быть как прямоугольное, так и полигональное. В открывшемся окне на вкладке «Загрузить» выбираете тип и масштаб карты которую собираетесь выкачать, и не забудьте сохранить выделение в отдельный файл типа *. .hlg (оно вам ещё пригодится). Нажимаем «Начать» (или нАчать?).

Проделываем эту процедуру для всех нужных Вам масштабов. Теперь выделение Вы можете загружать из сохранённого вами файла. Выкачав карту, можно двигаться дальше. Загружаем сохранённое выделение. В открывшемся окне переходим на вкладку «Скопировать», ставим галочки на типе карты, которую Вы выкачали и галочки на нужных масштабах. Выбираем экспорт выделенного участка в формат GoogleMV, указываем куда сохранить. Жмём «Начать».

Идём в папку куда сохранили Ваш кэш, переименовываем папку кэша в MAP,если тайлы карты имеют расширение *.png (и в SUR, если тайлы карты имеют расширение *. jpg). Переименованную папку копируем, например, в папку mapnaveditor_59CacheVE. Далее, запускаем Map Creator build 59, на вкладке «Map» выбираем тип карты VirtualEarth Map (ну, или VirtualEarth Surface, если тайлы карты имеют расширение *. Jpg), переходим на координаты и масштаб вашей будущей карты. Видим карту. Нажимаем кнопочку «set on map», мышью выделяем нужный Вам участок карты, в окне «map zoom» выбираем масштаб, ниже нажимаем на + , видим добавленную карту в окне. Меняем масштаб в окне «map zoom», нажимаем на +… И так для каждого слоя (масштаба) карты. И наконец, жмём на «Compile map», указываем путь для сохранения карты MapNav. Всё, можете загружать карту в MapNav (Мобильный навигатор карт).

Второй способ: Однако, есть некоторые онлайн-карты с которыми описанный выше способ не работает (вернее работает некорректно). Например, карты Yandex… Оные карты в качестве модели Земли используют эллипсоид (в отличии от гуглеподобных карт, используюших сфероид). Не вдаваясь в подробности, при замещении кэша (способ первый), карта будет иметь значительное смещение. Для получения карты MapNav из подобных источников нужно зайти с другой стороны. В Sas.Планете выделяете нужный Вам участок карты, в открывшемся окне на вкладке «Склеить», выставляя соответствующие настройки, склеиваете карту в формате OziExplorer (jpeg-картинка + map-файл привязки).

Повторяем процедуру для каждого уровня/масштаба. Получаем несколько карт в формате OziExplorer, для каждого уровня/масштаба свою. Далее, запускаете Map Creator, на вкладке Convert, тыкаете в значок «select map»… указываете на Ваш map-файл. На выходе карта mno/mnm. Описанную процедуру повторяем для каждого уровня/масштаба. Далее все полученные карты mno/mnm склеиваем воедино, кнопка Assamble. В результате получаете многоуровневую карту. Всё, можете загружать карту в MapNav.

Кстати: Map Creator имеет ограничение на создание карт большого размера. Автор программы заявляет, что вряд ли стоит подсовывать картинку более чем 16384 на 16384 пикселей. Пользователи программы уверяют, что Map Creator «хорошо кушает файлы до 19000 на 19000 пикселей» (уж не знаю, для чего нужны такие большие карты, но…). Однако, обойти это ограничение достаточно не сложно. Нужно создать несколько более мелких карт mno/mnm (вышеописанным вторым способом), и склеить их воедино (кнопка assamble в mapnaveditor). «Более мелкие» карты должны быть сделаны с «нахлёстом», т.е. перекрывать друг друга минимум на один тайл. Собирать эти «более мелкие» карты следует с включенной функцией Ignore border, которая обрезает неполные тайлы. В противном случае, при склейке в единую mno-карту, на ней будут видны черные полосы (это неполные тайлы).

Склеиваем все MNO-карты в одну

О том как создавать БОЛЬШИЕ карты для MapNav из карт SAS.Планеты (и не только) можно прочитать в следующей статье.

При копировании статьи ссылка на источник — camapka.ru обязательна.

Карты из SasPlanet в MapNav.: 3 комментария

  • 05.11.2012 в 14:16
    Permalink

    Sedoy, в SAS.Планете «гуглеподобность » карты можно определить следующим образом:
    в папке Maps SAS.Планеты найдите папку соответствующую Вашей карте, в этой папке есть текстовый файл params, откройте его и проверьте. У «гуглеподобных» карт должны быть следующие параметры:
    projection=1
    sradiusa=6378137
    sradiusb=6378137

    P.S. Космоснимки делайте вторым способом.

    Ответ
  • 27.09.2012 в 10:35
    Permalink

    Как определить «гуглеподобность» карты то? Делаю космоснимки описанным выше способом, в итоге карта ДИКО врёт… причём, чем больше масштаб — тем больше врёт. Чего делать то?

    Ответ
  • 06.09.2012 в 11:25
    Permalink

    Очень просто и доходчиво, спасибо.

    Ответ

Добавить комментарий

Ваш адрес email не будет опубликован.