Географические информационные системы и дистанционное зондирование
QuickMapServices — быстрая работа с базовыми картами в QGIS
Описание инструмента для быстрой работы с подложками в QGIS.
Этот инструмент может применяться для быстрого добавления базовой карты (т.н. подложки) в проект QGIS.
Растровая картографическая подложка часто выступает в качестве первого слоя, добавляемого для работы в проект. Подложка может быть представлена в виде различных интернет-сервисов: TMS, WMS, WMTS, ESRI ArcGIS Service или просто в виде тайлов XYZ.
В настольных ГИС существуют различные средства добавления подложек.
В QGIS, например, есть и собственные провайдеры данных и сторонние расширения для доступа к этим сервисам. WMS и WMTS протоколы реализованы в ядре QGIS. Доступ к TMS сервисам и тайлам XYZ можно организовать используя GDAL WMS Driver. В этом случае нужно подготавливать специальный XML-файл с описанием для GDAL. Это не удобно, так как запомнить адреса сложно, а процесс их ввода каждый раз при смене рабочего места или проекта отнимает достаточно много времени, их надо где-то хранить и т.д.
Существующие расширения для оптимизации работы нас не устроили и мы сделали QuickMapServices — расширение, которое позволяет быстро и удобно работать с различными источниками данных, реализованных в виде интернет-сервисов.
Создано в
Веб ГИС для вашей организации по доступной цене
Содержание
[править] Установка
Установка модулей QGIS описана в отдельной статье.
QuickMapServices находится в разработке и протестирован с QGIS 2.6 и выше.
[править] Исходный код
Исходный код модуля (репозиторий на Github) можно получить выполнив команду:
[править] Работа с расширением
После установки расширения в панели инструментов «Интернет» появятся кнопки расширения. Так же появится группа QuickMapServices в одноименном меню.
Кнопки можно расположить и на другой, возможно более удобной панели — Управление слоями (изменение панели по умолчанию производится в настройках модуля).
Первая кнопка является контейнером для дерева различных источников данных. Вторая кнопка включает панель поиска.
При выборе одной из них, карта автоматически подключается в проект в качестве слоя. Слой подключается в конец списка слоёв.
Настройки сервисов хранятся отдельно от самого модуля и при удалении-обновлении модуля они не удаляются.
[править] Почему QuickMapServices
Для удобной работы с подложками на данный момент существует несколько модулей расширения QGIS: OpenLayers plugin, Tile Map Scale Plugin, TileLayer. QuickMapServices наследует преимущества этих модулей и одновременно исправляет их недостатки:
Использует нативную управляемую реализацию доступа к данным (в отличие от OpenLayers Plugin)
Имеет готовый список адресов сервисов и умеет добавлять подложки в один клик (как OpenLayers Plugin, но у последнего скачивание данных фактически происходит через браузер webkit, что не оптимально).
Не испытывает проблем с масштабированием надписей на нестандартных масштабах (как Tile Map Scale Plugin, последний использует универсальный драйвер GDAL, что приводит к проблемам с качеством отображения и печати на нестандартных масштабных уровнях в QGIS).
Использует реализацию доступа к тайлам со сглаживанием на нестандартных масштабных уровнях, что решает проблему отображения подписей на нестандартных масштабных уровнях (как TileLayer Plugin, но последний не имеет удобного способа добавлять готовые подложки).
Cписок сервисов может легко расширяться путем добавления простых ini файлов.
Если вы используете NextGIS QGIS Future, то вы так же сможете загружать слои опубликованные в ArcGIS Server, например слои с Электронного Атласа Москвы или слой ЗОУИТ (Зоны с особыми условиями использования территории) с Публичной кадастровой карты.
[править] Настройки
[править] Общие настройки
Окно общих настроек можно вызвать из меню расширения. Что можно настроить:
Показывать управление подложками из панели «Управление слоями» — по умолчанию управление подложками добавляется в панель «Веб» и ее часто «теряют»;
Включать перепроецирование при добавлении тайлового слоя (если опция включена, то в проекте автоматически включается перепроецирование в систему координат EPSG: 3857 Pseudo Mercator);
Показывать информацию в панели сообщений (по умолчанию они показываются во всплывающей панели, что не всегда удобно).
И параметры загрузки тайлов:
Максимальное количество соединений для скачивания тайлов;
Срок хранения кэша тайлов;
Таймаут загрузки тайлов.
[править] Настройки подложки
Так как подложка добавленная через QuickMapServices является особым видом слоя, её окно настроек отличается от стандартного окна настроек слоя.
Через настройки подложки можно:
Включить-выключить сглаживание
Перевести подложку в оттенки серого
Настроить яркость, контраст, прозрачность
Включить пока копирайтов
[править] Дополнительные сервисы
Наверняка у вас есть набор подложек (сервисов) которые вы постоянно используете и вы хотели бы иметь их в плагине причем так, чтобы они устанавливались автоматически вместе с ним самим.
В QuickMapServices есть два хранилища для подложек: базовое и дополнительное. Подложки из базового набора устанавливаются и включаются вместе с модулем расширения. В последней версии модуля появилась возможность так же подключать дополнительные подложки. Просто зайдите в настройках во вкладку Дополнительные сервисы и нажмите «Получить дополнительные источники данных».
Расширенный набор сервисов может выглядеть так:
[править] Добавление новых сервисов
[править] Добавление в поисковую базу (рекомендуется)
Зарегистрируйтесь или войдите
Нажмите «Добавить сервис», чтобы создать источник в формате TMS, WMS, WFS или GeoJSON
Сервис будет добавлен в базу и доступен через поиск сервисов.
[править] Добавление в дерево сервисов
Для добавления сервиса в дерево сервисов нужны два файла, используйте примеры:
Иконка в формате SVG (пример)
Файл описания сервиса metadata.ini (пример):
[править] Дополнительные параметры
Могут понадобится также следующие параметры:
yOriginTop для слоёв TMS — когда координаты Y растут с юга на север, а не наоборот (пример — Кадастра Украины)
quadkeys в url (пример — Bing)
epsg_crs_id — код проекции в базе EPSG, например: epsg_crs_id=3857
postgis_crs_id — код проекции в соответствии с кодами таблицы spatial_reference в postgis, например: postgis_crs_id=3857
custom_proj — описание системы координат в формате proj4, например: custom_proj = +proj=merc +a=6378137 +b=6356752 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
layers — перечень показываемых слоёв если источник — сервер WMS и там их несколько (пример — ПКК), например: layers = 1,2,3,5,6
Что касается проекций, эти настройки только декларируют систему координат источника, но не влияют на сетку тайлов.
[править] Куда отправлять готовые описания сервисов
После того как метаданные и иконка подготовлены их нужно отправить авторам модуля одним из перечисленных способов (в порядке предпочтительности):
Если у вас есть аккаунт на Github — пул реквестом к нашему репозиторию. Важно: мы ни в коем случае не проверяем и не несем ответственности за содержимое отправляемых в этот репозиторий пользователями описаний сервисов.
Если нет аккаунта — завести аккаунт и сделать пул реквест
Если нет аккаунта, нет желания заводить аккаунт, не знаете что такое пул реквест и нет желания выяснять то можно так же:
Приложить файлы к теме обсуждения модуля на форуме GIS-Lab
Просто отправить по почте
Полная версия руководства по добавлению сервисов (на английском).
Мы можем перенести сервисы из дополнительных в базовый, так, чтобы они сразу включались с QuickMapServices. Но для этого сервис должен отвечать нескольким условиям: его лицензионная чистота не должна вызывать сомнений и он должен быть правильно описан.
[править] Известные ограничения
QuickMapServices умеет работать через прокси-сервер, но имеет некоторые ограничения:
При использовании HTTP прокси-сервера на уровне ОС должны быть заданы необходимые переменные окружения, обеспечивающие корректную работу утилит GDAL, используемых при работе QuickMapServices. Если используется прокси-сервер без аутентификации, то достаточно задать только переменную GDAL_HTTP_PROXY. В ОС Windows это выглядит так:
Сервисы на базе ArcGIS Server MapServices через модуль можно загружать только в NextGIS QGIS
[править] Контакты
Если вы нашли ошибку или у вас есть предложения по улучшению расширения — воспользуйтесь багтрекером. Кроме того, вопросы по использованию расширения можно задать авторам напрямую.
[править] Ссылки по теме
Последнее обновление: 2018-03-22 16:04
Дата создания: 30.01.2015 Автор(ы): Максим Дубинин
Источник
QuickMapServices — от плагина к сервису для всех
В мире существует огромное количество геосервисов, и мы все хотим иметь возможность легко находить и использовать их, не запоминая ссылки, параметры подключения и т.п.
Почти два года назад мы выпустили QuickMapServices (QMS) — удобный плагин для QGIS с десятком готовых картографических подложек и возможностью в несколько раз увеличить их количество, загрузив дополнительные источники данных.
QMS для QGIS загрузили более 130 тысяч раз, но у нас всегда были гораздо более амбициозные планы в отношении QMS, и сегодня мы открываем доступ к сотням геосервисов! Причем теперь они не ограничиваются картографическими подложками, а могут включать в себя WMS- и WFS-сервисы, а также наборы данных в формате GeoJSON.
Разберемся, что нового в мире QMS:
qms.nextgis.com
У QMS появился собственный веб-сайт — qms.nextgis.com.
Здесь вы можете искать и просматривать доступные геосервисы, изучать их описания, добавлять информацию и сообщать о проблемах. Веб-сайт — основное место для получения информации о QMS.
Но самое главное, что веб-сайт — это место, где вы можете ….
… добавить свой сервис!
Github — не самый удобный способ для краудсорсинга данных, и мы давно хотели упростить процесс добавления новых сервисов. Теперь, чтобы сделать свой сервис доступным любому пользователю в любой точке планеты, вам достаточно выполнить 2 простых действия:
Всё! Никакого ожидания и никакой модерации. Добавленный сервис будет сразу же доступен во всех сервисах и приложениях, использующих QMS API (QGIS, NextGIS Mobile, nextgis.com, и т.д.).
Новый сервис будет отображаться во вкладке «Мои сервисы» и вы сможете редактировать его.
Открытый API
Разрабатываете приложения, в которых пользователю нужен доступ к десяткам картоподложек и/или других геосервисов? У QMS теперь есть документированный открытый API с возможностью доступа ко всему каталогу сервисов.
Например, простой запрос https://qms.nextgis.com/api/v1/geoservices/?type=tms вернет все доступные подложки.
QMS для QGIS
Для поддержки новых функций мы выпустили новую версию плагина QuickMapServices для QGIS. Изменений в новой версии сравнительно немного, но среди них есть весьма важные:
Появился новый инструмент поиска (Search QMS)
Список найденных сервисов теперь более информативен и функционален
Если строка поиска не заполнена, плагин покажет 5 последних подключенных сервисов
Благодаря MatzFan, QMS теперь поддерживает настраиваемые сетки тайлов. Пока эта поддержка носит экспериментальный характер, мы продолжим работу над ней с учетом новых возможностей QGIS в отношении нативного подключения тайловых сервисов.
Более полная информация о релизе — в списке изменений.
ArcQMS — QMS для ArcGIS
Один из вопросов, которые нам задают чаще всего, — когда QMS появится в экосистеме продуктов Arc? Сегодня мы выпускаем ArcQMS — плагин для ArcGIS с частичной поддержкой каталога QMS, а именно — картографических подложек TMS.
Это большой релиз для нас, и мы надеемся, что вам понравится то, что получилось.
Больше информации о QuickMapServices — в презентации:
Расскажите, что вы думаете, и пожалуйста — добавляйте новые сервисы!