Виджет Яндекс Карт Виджет Яндекс.Пробок показывает общую загруженность дорог и позволяет следить за актуальной дорожной ситуацией в более чем шестидесяти городах России, Украины, Казахстана и Беларуси.
RMaps Отображение популярных онлайн карт, кэшированных карт, Яндекс-пробок, отображение текущего местоположения, слежение за текущим местоположением.
Рамблер-Карты Полноценная навигация для вашего автомобиля в режиме онлайн на экране вашего телефона. Версия программы для Android.
Дороги России C помощью приложения «Дороги России» можно не только просматривать карту качества дорог, но и вносить вклад в ее формирование.
OsmAnd Карты и навигация Программа с открытым исходным кодом, которая позволит вам не только найти дорогу в незнакомом городе, но и получить полезную информацию по интересным объектам неподалеку от вас.
Лицензия: Платно
GeoLine Программа GeoLine предназначена для специалистов в области геодезии, а так же для туристов и путешесвенников.
Приложение Кошелек! Избавляемся от бонусных карт!
Карты DorogaTV Пробки, веб-камеры, транспорт городов России Живые карты дорог России. Горячая информация по Москве, Н.Новгороду, Казани, Калининграду, Тамбову и другим городам.
Google Карты Просматривайте актуальные и высокоточные карты более 220 стран мира прямо на экране вашего мобильного устройства.
Защита Приложение, созданное в рамках программы «Защита» для сотрудников ПриватБанка, А-Банка, и их родственников, в котором вы найдете статьи об оказании первой помощи в различных ситуациях, и проч.
Источник: freesoft.ru
MAPS.ME: Offline maps GPS Nav
Быстрые и подробные офлайн-карты с пошаговой навигацией — нам доверяют более 140 млн путешественников со всего мира. MAPS.ME — твой помощник в любой точке мира всегда под рукой!
ОФЛАЙН-КАРТЫ
Экономьте мобильный Интернет: подключение к сети не требуется.
НАВИГАЦИЯ
Используйте навигацию для ходьбы и езды на автомобиле или велосипеде по всему миру.
ВЫСОКАЯ ДЕТАЛИЗАЦИЯ
Маршруты до достопримечательностей, туристические тропы и места, которых вы не найдете на других картах.
РЕГУЛЯРНЫЕ ОБНОВЛЕНИЯ
Карты ежедневно обновляются миллионами участников проекта OpenStreetMap. OpenStreetMap — это альтернатива Google Maps и Apple Maps, имеющая открытый исходный код.
БЫСТРЫЕ И НАДЕЖНЫЕ
Офлайн-поиск и GPS-навигация вместе с оптимизированными картами позволяют сэкономить память устройства.
ЗАКЛАДКИ
Сохраняйте места, которые вам понравились, и делитесь ими со своими друзьями.
ДОСТУПНО ПО ВСЕМУ МИРУ
Планируйте путешествие прямо из дома.
MAPS.ME можно загружать и использовать бесплатно.
И ЕЩЕ!
– Ищите в различных категориях, таких как рестораны, кафе, аттракционы, отели, банкоматы, общественный транспорт (метро, автобусы и т. д.).
– Делитесь своим местоположением в сообщениях или в социальных сетях.
Как работают БАНКОВСКИЕ КАРТЫ? — Научпок
– При езде на велосипеде или автомобиле приложение показывает, поднимается ли дорога вверх или идет вниз.
Путешествуй, открывая для себя новый места и плати картой с телефона!
Источник: play.google.com
Разработка картографических и геолокационных мобильных приложений
В статье освещены основные моменты при разработке картографических и геолокационных мобильных приложений с использованием QtQuick/QML. Рассматриваемый в статье пример поможет вникнуть в суть и основы использования API модуля Location из QtMobility.
В конце статьи читателю станет понятно, как мало кода необходимо для реализации базового функционала картографического приложения, такого как отображение карты, перемещение и изменение масштаба карты, так называемым, “щипком”. Для этого жеста воспользуемся элементом PinchArea, который был представлен в Qt Quick 1.1. Так же для изменения масштаба могут использоваться клавиши увеличения/уменьшения громкости.
Плюс я поведаю что нужно сделать, для использования карт не только от Nokia, но и от Google и OpenStreetMap. Для доступа к дополнительным картам необходимо собрать проект с плагинами для Qt. Для отображения карт необходимо подключение к интернету, но тайлы загружаются один раз и затем запросы кешируются во временной папке. Расположение и размер кеша настраиваемые.
Описание сборки проекта и плагинов основывается на утверждении, что у читателя установлен QtSDK последней версии и прописаны все системные пути к библиотекам (и умение всем этим пользоваться, конечно же).
Дополнительные плагины
Для использования карт от Google и OpenStreetMap необходимо скачать проект с плагинами, либо в виде архива, либо клонировать репозиторий с gitorius.
Для сборки я использовал QtCreator, поэтому буду описывать сборку на основе имеющегося опыта.
При открытии проекта в QtCreator он предложит настроить конфигурацию сборки, выбираете «Эмулятор Qt» и нажимаете Ctrl+B.
Когда сборка завершиться, создайте отдельную папку и назовите ее /geoservices, и положите в нее получившиеся библиотеки. Для того чтобы Qt искала наши плагины в этой папке, нужно либо положить эту папку рядом с исполняемым файлом приложения, либо добавить путь для поиска вызвав QApplication::addLibraryPath() в функции main. Всё, расширения готовы к использованию, можно переходить к нашему приложению.
Картографическое приложение
Итак, приступим, наконец-то, к созиданию. Для создания приложения можно воспользоваться стандартным Qt Quick шаблоном предоставленным в QtCreator. Все изменения будут происходить в main.qml, открываем этот файл, удаляем всё что было добавлено и приступаем к написанию картографического приложения.
Сначала конечно же нужно подключить необходимые модули:
import QtQuick 1.1 //необходимые элементы для работы с картами import QtMobility.location 1.2
Для отображения карт в модуле Location есть такой прекрасный элемент как Map, ему нужно установить плагин с именем отображаемой карты и установить фокус:
В принципе, вы уже можете испытать приложение, оно правда не умеет реагировать на события, но для отображения карты больше ничего не нужно. Конечно же, мы не остановимся и продолжим расширять функционал. Итак, пусть карта показывает нам нашу всеми любимую столицу и для этого зададим карте центр и масштаб.
//. zoomLevel: 7 center: Coordinate < latitude: 55.7545 longitude: 37.6268 >//.
Теперь можно добавить функционал для реагирования на действия пользователя.
Начнем с реализации щипка.
//. PinchArea < id: pincharea property double oldZoom anchors.fill: parent function calcZoomDelta(zoom, percent) < return zoom + Math.log(percent)/Math.log(2) >onPinchStarted: < oldZoom = map.zoomLevel >onPinchUpdated: < map.zoomLevel = calcZoomDelta(oldZoom, pinch.scale) >onPinchFinished: < map.zoomLevel = calcZoomDelta(oldZoom, pinch.scale) >> //.
Вся реализация такого функционала заняла 22 строчки кода, не плохо, не правда ли?
Итак, осталось реализовать перемещение карты и добавить изменение масштаба клавишами.
//. Keys.onPressed: < switch (event.key) < case Qt.Key_VolumeUp: case Qt.Key_Plus: map.zoomLevel += 1; break; case Qt.Key_VolumeDown: case Qt.Key_Minus: map.zoomLevel -= 1; break; >> MapMouseArea < property int lastX : -1 property int lastY : -1 onPressed : < lastX = mouse.x lastY = mouse.y >onReleased : < lastX = -1 lastY = -1 >onPositionChanged: < if (mouse.button == Qt.LeftButton) < if ((lastX != -1) (lastY != -1)) < var dx = mouse.x — lastX var dy = mouse.y — lastY map.pan(-dx, -dy) >lastX = mouse.x lastY = mouse.y > > onDoubleClicked: < map.center = mouse.coordinate map.zoomLevel += 1 lastX = -1 lastY = -1 >> //.
И для того чтобы карта не была совсем скучной, добавим булавку в стиле Google.
//. MapImage < id: baloon //заметьте MapImage сам скачает картинку source: «http://habrastorage.org/storage1/b80bea34/0e0bc0f1/2cc13b01/8b462d5a.png» offset.x: -12 offset.y: -24 //расположим булавку по адресу офиса Nokia coordinate : Coordinate < latitude: 55.752949 longitude: 37.606292 >//добавим интерактивности //при нажатии на булавку происходит масштабирование карты //и булавка располагается в центре карты MapMouseArea < anchors.fill: parent //а вот тут можно применить всю силу анимации //для анимированного перемещения и масштабирования карты onClicked: < map.center = baloon.coordinate map.zoomLevel = map.maximumZoomLevel >> > >
Результат получившегося приложения, можно наблюдать на скриншотах:
- MapRectangle
- MapCircle
- MapText
- MapImage
- MapPolygon
- MapPolyline
- MapGroup
Ссылки
- Само приложение на gitorius
- Репозиторий с доп. плагинами
- Документация на плагины
Источник: habr.com