Бесконечное путешествие

Как не просидеть всю жизнь дома

Загрузка растровых карт в OSMAnd

OSMAnd – одна из лучших программ для векторной навигации под Android и по моему единственная, которая умеет строить маршруты в оффлайн по картам OpenStreetMap. На фоне других программ, например Androzic, ее функционал для решения всяких задачек не особо богат, но это и нее предназначение. Главная ее задача с ориентировать вас на местности/дороге, показать карту и провести по маршруту.

OSMAnd main screen

Вот об аспекте использования карт и пойдет речь в этой статье

Карты в OASMAnd можно загружать двух видов – векторные и растровые

В качестве источника векторных карт используется сервис OpenStreetMap.org. Карты упакованы в собственный формат OBF и имеют такое же расширение. Бесплатная версия программы позволяет скачать прямо из программы всего 10 карт, но с сайта программы можно скачать и подложить программе столько, на сколько хватит вашей карточки 🙂

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

В качестве растровых карт можно подключать онлайн сервисы, напирмер тот же самый Google или Yandex. Для этого в папке %OSMAND%/tiles/<ИТСТОЧНИК> нужно сделать файл .metainfo, где прописывается адрес источника с форматом тайлов.

Google

[url_template]
http://khms.google.com/kh/v=149&x={1}&y={2}&z={0}
[ext]
.jpg
[min_zoom]
3
[max_zoom]
20
[tile_size]
256
[img_density]
8
[avg_img_size]
18000

Yandex

[url_template]
http://sat01.maps.yandex.net/tiles?l=sat&x={1}&y={2}&z={0}
[ext]
.jpg
[min_zoom]
3
[max_zoom]
20
[tile_size]
256
[img_density]
8
[avg_img_size]
18000
[ellipsoid]
true

Файлы для других картографических сервисов легко составляются по этим двум шаблонам.

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

Проще всего SQLITE кэш делается в программе SASPlanet. Просто выделите нужный участок карты, скачайте его и экспортируйте в формате RMaps(SQLite). На выходе получится один файл <ИМЯ>.slitedb, который нужно поместить в папку %OSMAND%/tiles/ он автоматически подключится и будет доступен в слоях под именем файла.

Чтобы стало возможно подключение растровых карт нужно обязательно включить плагин “Онлайн карты”. Делается это через меню Настройки-Диспетчер плагинов-Онлайн карты. Кстати, там есть еще  несколько полезных дополнений, который я бы включил.

OSMAnd plugins

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

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

Теперь на экране есть векторная карта и одна или две растровых. При этом работает роутинг, ведение по маршруту и видны все POI.

OSM map

 

Понравилась статья? Будет много интересного! Подпишитесь на обновления:

Поделиться в соц.сетях

Тэг:
  • Андрей Лунячек сказал:

    OsmAnd – это отличная программа. Я тоже пишу про неё статью, но дело продвигается медленно )))
    Про подключение онлайн-карт: ряд источников в программе уже прописан. Например, карты и спутниковые снимки от Яндекса и Майкрософта, а также карта от Викимапии. Причём имеется удобная функция кэширования нужного района на смартфон (планшет), например, дома через вайфай. Это проще, чем делать на ПК файл SQLite и закидывать на смартфон (планшет).
    Если делать файл SQLite, то нужно обязательно сделать его многослойным, начиная с мелких масштабов, иначе не будет возможности уменьшить карту.
    Кстати, есть проги, которые делают этот файл из оффлайн-карт формата OziExplorer (JPG/PNG +MAP).
    Можно одновременно включить три карты: основная, карта покрытия и карта подложки. Векторная карта может быть включена только как основная. А растровая – как любая. В том числе и вместо векторной, как основная (Меню – Настройка карты – Источник карты). Но функции векторной карты (автороутинг и использование POI) при этом остаются.

    • nord_tramper сказал:

      Про разницу в онлайн-кэше и SQLite я там написал – предпочтительно использовать формат SQLite, т.к. SD карты не любят обилия файлов на файловой системе. А так да, ничег оне мешает дома закешировать область средствами программы.
      Я делал кэш ген-штаба прямо из SASPlanet ))

  • Катерина сказал:

    Мы пользуемся навигацией MapFactor: GPS Navigation от http://navigatorfree.mapfactor.com/en/download/ . В ней тоже Open Street Maps, навигация работает оффлайн прекрасно (для Австралии, по России не скажу).
    Для хранения и просмотра POI используем гугл-карты, затем экспортируем в KML, затем открываем в приложении Maps.Me. Из Maps.me можно уже потом вызвать MapFactor: GPS Navigation и ехать.

    • nord_tramper сказал:

      Чем-то похожа на османд по описанию, скачаю посмотрю чего и как. Карты там те же самые, так что думаю и навигация по РФ будет работать не хуже чем по Австралии

  • Андрей Лунячек сказал:

    Кстати, довольно большое количество уже готовых растровых топографических карт для программы OsmAnd у меня имеется на этой странице: http://www.encyclopedia-stranstviy.com/p/karty-dlya-android.html

  • ququruzka сказал:

    подскажите, файл .метаинфо для гугла уже устарел ? потому что у меня на османде – чистый экран. ничег оне грузится. osmand 2.4.5 (бесплатный)

    • nord_tramper сказал:

      Вполне вероятно. Вообще гугл с яндексом довольно регулярно обновляют версию карт и надо либо подстраивать их руками, либо просто подгружать файл, с сайта самого османда – там будет свежая инфа по всем онлайн ресурсам

  • алекс сказал:

    russia addresses-nationwide asia- дайте ссылку где скачать новей- установленные 140м-от 15 года..думаю старые…

    • nord_tramper сказал:

      А что это за файл? И где он находится в папке самой программы?

  • алекс сказал:

    russia addresses-nationwide asia–живет там где локальные карты/

Ваш email не будет опубликован. Обязательные для заполнения поля помечены *

*