6.5. Добавление ресурсов¶
NextGIS Web строится на ресурсном подходе - каждый компонент системы (слой, группа, сервис) является её ресурсом. Одним из таких типов ресурсов является слой - растровое изображение или векторный файл (таблица базы данных).
Для каждого слоя может быть создано неограниченное количество стилей - способов визуализации геоданных на веб-карте.
Интерфейс добавления векторных, растровых и PostGIS слоев приблизительно одинаковый - создается ресурс слоя, внутри него - ресурсы стилей. Последние визуализируют данные на веб-карте.
Для того, чтобы создать ресурс, перейдите в группу, куда хотите его добавить, и нажмите на кнопку Создать ресурс. Затем во всплывающем окне выберите нужный тип ресурса. Изначально предлагается полный список доступных ресурсов.
Чтобы быстрее найти нужный тип ресурса, можно воспользоваться строкой поиска.
Также типы ресурсов сгруппированы по категориям, которые можно выбрать в левой части окна:
Слои и стили
Карты и сервисы (веб-карта, сервисы WMS, WFS, OGC API - Features)
Сбор данных (группа трекеров, трекер, проект Collector)
Внешние соединения (соединения PostGIS, TMS, WMS)
Другие ресурсы (группа ресурсов, библиотека маркеров SVG, справочник)
Ниже подробно описан процесс создания разных типов ресурсов.
6.5.1. Подложка веб-карты¶
Нажмите кнопку Создать ресурс и выберите из списка Подложка веб-карт (Рис. 6.21.). В открывшемся окне введите название ресурса, которое будет отображаться в административном интерфейсе (Рис. 6.22.).
На соответствующих вкладках можно добавить «Описание» и «Метаданные» ресурса (Рис. 6.23.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
На вкладке «Подложка веб-карты» задается URL-адрес TMS сервиса (Рис. 6.24.). Есть два пути для его указания:
Найти нужный сервис в строке поиска. Остальные поля будут заполнены автоматически.
Ввести адрес вручную.
6.5.2. Предварительный просмотр¶
Функция предварительного просмотра позволяет увидеть на подложке геометрии загруженных данных без добавления их на веб-карту.
Примечание
Для векторных данных (vector layer) предварительный просмотр возможен как для слоя, так и для стиля. Для растровых - только для стиля. Для TMS и WFS слоев просмотр также доступен.
Находясь в соответствующем ресурсе, нажмите на иконку «глаз» напротив названия вложенного ресурса или на кнопку Просмотр в правом меню в разделе Дополнительно.
Откроется окно визуального предварительного просмотра загруженных геометрий без возможности более детального взаимодействия (просмотра атрибутов, идентификации объектов и др.).
6.5.3. Растровый слой¶
Растровые изображения в NextGIS Web загружаются через специальный ресурс «Растровый слой».
Процесс создания¶
Перейдите в группу ресурсов (папку), в которой необходимо создать рстровый слой. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Растровый слой (см. Рис. 6.27.).
В открывшемся окне на вкладке «Растровый слой» необходимо загрузить файл геоданных в формате GeoTIFF. В зависимости от тарифного плана в окне отображается максимально допустимый объем загружаемого файла (Рис. 6.28.).
Если вы планируете подключать этот растр в QGIS напрямую из Веб ГИС, при загрузке включите режим Загрузить как Cloud Optimized GeoTIFF (COG). Это оптимизирует его специальным образом для более быстрого подключения и отображения.
Во вкладке «Наименование» укажите наименование растрового слоя (см. Рис. 6.29.). Оно будет отображаться в административном интерфейсе. Поле «Ключ» является необязательным к заполнению.
На вкладке «Описание» можно добавить произвольный текст, описывающий содержимое данного слоя (Рис. 6.30.).
В «Метаданные» слоя можно записать информацию в формате «ключ-значение» (Рис. 6.31.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
После указания всех необходимых параметров нажмите кнопку Создать.
Стиль QGIS (для растров)¶
После удачной загрузки растра необходимо создать стиль QGIS. Эта процедура аналогична добавлению стиля для векторного слоя. Создать его можно в NextGIS QGIS. При создании веб-карты (подробнее см. Добавление веб-карты) можно добавить загруженный растр на карту, выбрав данный стиль.
Растровый слой с прозрачностью (обрезкой, альфа-каналом)¶
Большинство утилит не создают канал прозрачности (А или альфа канал), а только добавляют значение NoData. Для преобразования значений NoData в альфа канал можно воспользоваться утилитой командной строки gdalwarp. Ниже приведен пример команды.
gdalwarp -t_srs EPSG:3857 -multi -dstalpha -dstnodata none -wo \
"UNIFIED_SRC_NODATA=YES" -co COMPRESS=JPEG \
d:\temp\o\ast_20010730_010043_rgb.tif d:\temp\o\ast_20010730_010043_rgba.tif
Загрузка растров с индексированными цветами¶
Загрузка растров с индексированными цветами происходит так же, как и растров в RGB. Если файл находится не в GeoTIFF, то его можно сконвертировать так
gdal_translate yaroslavl.map yaroslavl.tif
6.5.4. Векторный слой из файла¶
В NextGIS Web можно создавать векторные слои на основе геоданных в форматах ESRI Shapefile, GeoJSON, KML, GML и GeoPackage.
Процесс создания¶
Перейдите в группу ресурсов (папку), в которой необходимо создать векторный слой. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Векторный слой (см. Рис. 6.32.).
На открывшейся вкладке «Векторный слой» необходимо загрузить файл геоданных в формате ESRI Shapefile (zip-архив), GeoJSON, GML, KML или GeoPackage. В зависимости от тарифного плана в окне отображается максимально допустимый объем загружаемого файла (Рис. 6.33.). NextGIS Web может принимать многослойные наборы данных на входе. Если в архиве содержится несколько слоёв, то после его загрузки пользователю будет предложено выбрать слой, на основе которого будет создан ресурс «Векторный слой».
Ниже предлагается определить дополнительные параметры создания векторного слоя. В зависимости от качества данных можно следующим образом обрабатывать ошибки геометрии при загрузке файла:
Не исправлять ошибки
Исправлять без потери данных (если это будет возможно)
Исправлять с возможными потерями
Исходя из данных далее указываются тип геометрии, наличие/отсутствие мультигеометрий, Z-координаты и источник FID (field-ID, определять автоматически или указать из определенного поля). Если в ESRI Shapefile присутствует файл с описанием кодировки [расширение .cpg], то он будет учитываться при загрузке. Для формата GeoJSON кодировка всегда должна быть UTF-8. Подробнее о дополнительных параметрах можно прочитать здесь.
Во вкладке «Ресурс» укажите название векторного слоя (Рис. 6.34.). Оно будет отображаться в административном интерфейсе. Поле «Ключ» является необязательным к заполнению.
На вкладке «Описание» можно добавить произвольный текст, описывающий содержимое данного слоя (Рис. 6.35.).
В «Метаданные» слоя можно записать информацию в формате «ключ-значение» (Рис. 6.36.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
После завершения ввода нужных данных нажмите кнопку Создать.
Далее можно создавать стиль, который в последующем будет визуализировать данные слоя на веб-карте.
Требования к исходным данным¶
В качестве исходного файла можно загружать следующие форматы:
Если нужно загрузить данные в другом формате, вы можете использовать NextGIS Connect.
Примечание
В случае ESRI Shapefile все составляющие его части (dbf, shp, shx, prj и др.) должны быть упакованы в архив формата Zip.
Примечание
Мы рекомендуем не использовать кириллицу в названиях полей атрибутов. Несмотря на то, что в большинстве случаев такие данные могут быть загружены в Веб ГИС и показаны на картах, в некоторых случаях вы можете испытывать проблемы с работой с такими данными в NextGIS Mobile и визуализацией (особенно если условные обозначения сформированы на базе одного из таких полей). Переименуйте поля латиницей перед загрузкой и используйте синонимы полей (алиасы) для их отображения кириллицей на картах.
Если во входном файле есть поля с названиями: id (ID) или geom (GEOM), то при загрузке они будут переименованы или превращены во внутренние идентификаторы (поле id).
6.5.5. Пустой векторный слой¶
Создание пустого векторного слоя позволяет начать вести базу данных в ВебГИС без использования настольного приложения.
Перейдите в группу ресурсов (папку), в которой необходимо создать векторный слой. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Векторный слой (см. Рис. 6.37.).
В открывшемся окне в выпадающем меню выберите «Создать пустой слой». Ниже появится поле выбора типа геометрии слоя. По умолчанию создается точечный слой.
Во вкладке «Ресурс» укажите название векторного слоя (Рис. 6.34.). Оно будет отображаться в административном интерфейсе. Поле «Ключ» является необязательным к заполнению.
На вкладке «Описание» можно добавить произвольный текст, описывающий содержимое данного слоя (Рис. 6.35.).
В «Метаданные» слоя можно записать информацию в формате «ключ-значение» (Рис. 6.36.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
После завершения ввода нужных данных нажмите кнопку Создать.
Далее можно создавать стиль, который в последующем будет визуализировать данные слоя на веб-карте.
Для добавления объектов на пустой слой можно использовать инструменты редактирования веб-карты.
6.5.6. Векторный слой из PostGIS¶
Для добавления векторного слоя из БД PostgreSQL с модулем расширения PostGIS необходимо сначала создать ресурс — соединение PostGIS.
Соединение PostGIS¶
Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Cоединение PostGIS (см. Рис. 6.39.).
В открывшемся окне укажите наименование PostGIS соединения (Рис. 6.40.). Оно будет отображаться в административном интерфейсе (не путайте это наименование и название слоёв в базе данных). Поле «Ключ» является необязательным к заполнению.
На вкладке «Описание» можно добавить произвольный текст, описывающий создаваемый ресурс (Рис. 6.41.).
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 6.42.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
На вкладке «Cоединение PostGIS» необходимо ввести параметры подключения к БД PostGIS, из которой будут забираться ваши данные (Рис. 6.43.).
После указания параметров нажмите кнопку Создать.
Слой PostGIS¶
Далее можно приступать к добавлению отдельных слоёв PostGIS. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Слой PostGIS (см. Рис. 6.44.).
На вкладке «Ресурс» указывается наименование слоя PostGIS (Рис. 6.45.). Оно будет отображаться в административном интерфейсе и дереве слоев веб-карты после добавления. Поле Ключ является необязательным к заполнению.
В «Описании» можно задать произвольный текст, отражающий содержание ресурса (Рис. 6.46.).
На соответствующей вкладке есть возможность добавить метданные слоя PostGIS (Рис. 6.47.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
На вкладке «Слой PostGIS» настраиваются параметры слоя (Рис. 6.48.).
Здесь необходимо выполнить следующие действия:
Из выпадающего списка выбрать подключение к БД (созданное ранее).
- Выбрать схему БД, в которой находится слой PostGIS.
В одной базе данных PostgreSQL может быть несколько схем, внутри каждой схемы лежат таблицы и представления. Если схема одна, то она называется public. Подробнее смотрите в руководствах по СУБД PostgreSQL.
- Выбрать название таблицы (слоя PostGIS).
Вам потребуется знать названия ваших таблиц и полей в базе данных. Отображение таблиц и представлений не входит в задачи NextGIS Web. Для просмотра можно воспользоваться NextGIS QGIS или PgAdmin.
- Выбрать «Поле ID».
При загрузке данных в PostGIS через NextGIS QGIS обычно создается поле с названием ogc_fid, при загрузке иным способом название поля может отличаться. Поле ID должно удовлетворять ограничениям на тип данных: быть числовым (numeric) и являться первичным ключом.
- Выбрать «Поле геометрии».
При загрузке данных в PostGIS через NextGIS QGIS обычно создается поле геометрии с названием wkb_geometry, при загрузке иным способом название поля может отличаться.
Поля «Тип геометрии», «Система координат», «Поля» и «SRID» являются не обязательными, и их значения могут быть оставлены по умолчанию.
После указания параметров нажмите кнопку Создать.
Детали¶
Программное обеспечение NextGIS Web поддерживает добавление таблиц, в которых в поле геометрии хранятся совместно точечные, линейные и полигональные геометрии. Это необходимо для отображения специфических наборов данных: например, если в одной таблице хранятся координаты городских парков в виде полигонов и мусорных урн в виде точек. В этом случае в NextGIS Web нужно добавить три отдельных слоя для каждого типа геометрии, и выбрать нужный элемент в поле «Тип геометрии».
После создания слоя для отображения подписей к геометриям необходимо задать атрибут наименования. Для этого следует зайти на страницу редактирования слоя и выбрать нужное поле в списке «Атрибут наименования».
Если в БД были изменены какие либо данные, касающиеся структуры (названия или типы полей, изменен их состав, переименованы таблицы и т. п.), то в свойствах соответствующего слоя необходимо обновить описания атрибутов. Для этого для выбранного слоя следует выбрать действие «Изменить», на вкладке «Слой PostGIS» в поле «Описания атрибутов» выбрать «Загрузить» из базы данных и нажать «Сохранить».
Диагностика PostGIS¶
Проверить корректность введенных данных при добавлении ресурса Соединение PostGIS или Слой PostGIS можно при помощи инструмента Диагностика. Для этого вам необходимо нажать на кнопку Диагностика на панели справа.
В случае, если при создании PostGIS-соединения или PostGIS слоя все поля заполнены верно - диагностика пройдет успешно.
В случае, если какие-то из введенных данных не корректны - появится сообщение об ошибке.
Возможные проблемы со слоями PostGIS¶
Вы создали подключение и пытаетесь создать на его основе слой PostGIS.
Если вы получаете ошибку:
Невозможно подключиться к базе данных!
Проверьте, доступна ли база данных к которой вы подключаетесь, правильная ли у вас учетная запись. Это удобно делать через pgAdmin или QGIS.
Имейте в виду, может быть так, что база временно отключена или изменились параметры доступа.
Создание слоя с условиями¶
В NextGIS Web нельзя указывать условия отбора записей из слоя (SQL конструкция WHERE). Это делается для обеспечения безопасности (исключения атак SQL Injection). Для обеспечения такой возможности необходимо в БД создать представления с соответствующими условиями отбора.
Для этого необходимо подключится к БД PostgreSQL/PostGIS при помощи pgAdminIII, перейти в схему данных, где следует создать представление и в элементе дерева «Представления» правой клавишей мыши вызвать контекстное меню и выбрать «Создать новое представление» (см. Рис. 6.49.. п. 1). Также диалог можно вызвать правым кликом на названии схемы, выбрав «Новый объект» и далее «Новое представление». Далее в открывшемся диалоге необходимо указать:
Название представления (вкладка «Свойства»).
Схему данных, в которой необходимо создать представление (вкладка «Свойства»).
Необходимый SQL запрос (вкладка «Определение»).
Цифрами на рисунка обозначено: 1 – дерево элементов базы данных; 2 – кнопка открытия таблицы (активна при выделенной таблице); 3 – содержимое запроса в представлении.
После этого, не выходя из pgAdminIII, можно открыть представление для проверки корректности введенного SQL запроса (см. Рис. 6.49.. п. 2).
6.5.7. Cлой WMS¶
Примечание
В настоящее время поддерживаются версии WMS 1.1.1 и 1.3.0.
NextGIS Web является клиентом WMS. Для подключения слоя WMS необходимо знать его адрес.
Сервер WMS, предоставляющий подключаемый слой, должен отдавать его в системе координат EPSG:3857. Обычно сервера умеют отдавать WMS в нескольких указанных в конфигурации СК, одна из них обязательно должна быть 3857.
Код должен быть строго 3857, 900913 не подойдет. Например, слой WMS, предоставляемый Geofabrik (GetCapabilities), умеет отдавать данные в EPSG:4326 и EPSG:900913. Фактически EPSG:900913 и EPSG:3857 - это одно и то же, но NextGIS Web запрашивает данные в EPSG:3857, а этот сервер WMS такую СК не поддерживает. Подключенные данные не будут отображаться на карте.
Проверить наличие 3857 для подключаемого слоя можно, выполнив запрос GetCapabilites к серверу и изучив ответ сервера.
Соединение WMS¶
Для добавления слоя WMS необходимо сначала создать подключение к серверу WMS (достаточно одного соединения для множества слоёв). Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Cоединение WMS (см. Рис. 6.50.).
В открывшемся окне укажите наименование WMS соединения (Рис. 6.51.). Оно будет отображаться в административном интерфейсе (не путайте это наименование и названия слоёв в базе данных). Поле «Ключ» является необязательным к заполнению.
На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 6.52.)
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 6.53.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
На вкладке «Cоединение WMS» вводятся параметры подключения (Рис. 6.54.) к Серверу WMS, который предоставляет данные:
URL
Имя пользователя
Пароль
Версия WMS
Возможности (управление запросом
GetCapabilites
к WMS-серверу)
Поле URL является обязательным, остальные используются по необходимости.
После указания параметров нажмите кнопку Создать.
Слой WMS¶
Далее можно приступать к добавлению отдельных слоёв WMS. Для этого следует перейти в группу, где необходимо создать слой. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Слой WMS (см. Рис. 6.55.).
На вкладке «Ресурс» указывается наименование слоя WMS (Рис. 6.56.). Оно будет отображаться в административном интерфейсе и дереве слоев веб-карты после добавления. Поле Ключ является необязательным к заполнению.
На вкладке «Описание» можно добавить произвольный текст, описывающий содержимое слоя (Рис. 6.57.).
Настройки тайлового кэша подробнее описаны в данном разделе.
На соответствующей вкладке есть возможность добавить метаданные слоя в формате «ключ-значение» (Рис. 6.58.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
На вкладке «Слой WMS» настраиваются параметры (Рис. 6.59.):
Выбор Соединения WMS (созданного ранее)
Формат изображения (список MIME-типов данных, предоставляемых сервером)
Выбор слоя из списка (можно выбрать несколько)
Также на этой вкладке можно добавить вендор параметры (Рис. 6.61.). Это нестандартные параметры запроса, которые определяются реализацией для обеспечения расширенных возможностей и зависят от поставщика WMS.
После указания параметров нажмите кнопку Создать.
Предупреждение
Идентификационные запросы к внешним WMS сервисам с Веб карт не поддерживаются.
6.5.8. Сервис WMS¶
Создание WMS-сервиса¶
Программное обеспечение NextGIS Web может работать как сервер WMS. По этому протоколу клиенты запрашивают картинку карты по заданному охвату.
Для развёртывания WMS-сервиса необходимо добавить ресурс. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Сервис WMS (см. Рис. 6.62.).
На вкладке «Ресурс» указывается наименование сервиса WMS (Рис. 6.63.). Оно будет отображаться в административном интерфейсе. Поле Ключ является необязательным к заполнению.
На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 6.64.)
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 6.65.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
На вкладке «Сервис WMS» необходимо добавить ссылки на нужные слои или стили. (Рис. 6.66.). Также можно указать диапазон масштабных уровней отображения данных.
После создания ресурса выведется сообщение с URL WMS-сервиса, который можно использовать в других программах, например NextGIS QGIS, или JOSM. Далее необходимо настроить права доступа к WMS-сервису (см. ngw_access_rights) для стороннего использования различными пользователями.
Cлой NextGIS Web можно добавлять в настольные, мобильные и Веб ГИС различными способами.
Использование сервиса WMS¶
NextGIS Web является сервером WMS. Соответственно подключить созданные в нем сервисы WMS можно в любом клиентском ПО, поддерживающем протокол WMS. Для этого нужно знать URL WMS-сервиса, который высвечивается на странице настроек конкретного сервиса.
Например:
https://demo.nextgis.ru/api/resource/4817/wms
Для использования сервиса через утилиты GDAL нужно создать для него файл XML. Для создания такого файла нужно знать URL сервиса WMS. Эти параметры нужно подставить в строку ServerUrl примера ниже. Все остальное остается неизменным.
<GDAL_WMS>
<Service name="WMS">
<Version>1.1.1</Version>
<ServerUrl>https://demo.nextgis.ru/api/resource/4817/wms</ServerUrl>
<SRS>EPSG:3857</SRS>
<ImageFormat>image/png</ImageFormat>
<Layers>moscow_boundary_multipolygon</Layers>
<Styles></Styles>
</Service>
<DataWindow>
<UpperLeftX>-20037508.34</UpperLeftX>
<UpperLeftY>20037508.34</UpperLeftY>
<LowerRightX>20037508.34</LowerRightX>
<LowerRightY>-20037508.34</LowerRightY>
<SizeY>40075016</SizeY>
<SizeX>40075016.857</SizeX>
</DataWindow>
<Projection>EPSG:3857</Projection>
<BandsCount>3</BandsCount>
</GDAL_WMS>
Если нужна картинка с альфа каналом, следует указать <BandsCount>4</BandsCount>
.
Пример вызова утилиты GDAL. Она получает картинку из NextGIS WEB по WMS и сохраняет её в GeoTIFF.
gdal_translate -of "GTIFF" -outsize 1000 0 -projwin 4143247 7497160 4190083 7468902 ngw.xml test.tiff
6.5.9. Слой TMS¶
Соединение TMS¶
Для добавления слоя TMS сначала необходимо создать ресурс Соединение TMS. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Соединение TMS (см. Рис. 6.67.).
Далее необходимо ввести наименование подключения, которое будет отображаться в административном веб интерфейсе (см. Рис. 6.68.).
Поле «Ключ» является необязательным к заполнению. На соответствующих вкладках можно добавить описание ресурса и метаданные. Как правило, метаданные используются для разработки сторонних приложений с помощью API. Вкладка «Соединение TMS» отвечает за выбор и настройку одного из способов подключения к TMS серверу - настраиваемый или из геосервисов NextGIS (см. Рис. 6.69.).
В случае настраиваемого способа подключения пользователь должен указать шаблон URL, параметры ключа API и используемую тайловую схему. Для геосервисов NextGIS указывается только пользовательский ключ API. После заполнения всех полей нажатие кнопки Создать завершает процесс создания ресурса Соединение TMS.
Слой TMS¶
Ресурс Слой TMS добавляется на базе созданного ранее Соединения TMS. Для этого следует выбрать соответствующий тип ресурса из меню создания (см. Рис. 6.70.).
На первой вкладке указывается наименование слоя для отображения в административном интерфейсе (см. Рис. 6.71.).
Кэширование обеспечивает повышение скорости отображения слоев веб карты. Настройки тайлового кэша подробнее описаны в данном разделе.
На вкладке «Слой TMS» находятся основные настройки отображения (см. Рис. 6.72.):
Соединение TMS - выберите ранее созданное подключение TMS
Система координат для отображения информации (выбирается из выпадающего списка)
Минимальный и максимальный масштаб отображения данных
Охват в градусах
Размер тайлов в пикселях
После создания слоя пользователь может добавить его на веб-карту для отображения. Добавляется именно слой TMS, стиль для него не нужен.
Использование сервиса TMS¶
NextGIS Web является сервером TMS. Соответственно подключить созданные в нем слои/стили можно в любом клиентском ПО, поддерживающем протокол TMS. Для этого нужно знать URL сервиса TMS.
Ссылка формируется следующим образом, пример:
https://demo.nextgis.ru/api/component/render/tile?z={z}&x={x}&y={y}&resource=234
Для использования TMS через утилиты GDAL нужно создать для него файл XML. Для создания такого файла нужно знать URL TMS. Эти параметры нужно подставить в строку ServerUrl примера ниже. Все остальное остается неизменным.
<GDAL_WMS>
<Service name="TMS">
<ServerUrl>https://demo.nextgis.ru/api/component/render/tile?z={z}&x={x}&y={y}&resource=234</ServerUrl>
</Service>
<DataWindow>
<UpperLeftX>-20037508.34</UpperLeftX>
<UpperLeftY>20037508.34</UpperLeftY>
<LowerRightX>20037508.34</LowerRightX>
<LowerRightY>-20037508.34</LowerRightY>
<TileLevel>18</TileLevel>
<TileCountX>1</TileCountX>
<TileCountY>1</TileCountY>
<YOrigin>top</YOrigin>
</DataWindow>
<Projection>EPSG:3857</Projection>
<BlockSizeX>256</BlockSizeX>
<BlockSizeY>256</BlockSizeY>
<BandsCount>4</BandsCount>
<Cache />
</GDAL_WMS>
6.5.10. Набор тайлов¶
Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Набор тайлов.
Далее необходимо ввести наименование набора тайлов, которое будет отображаться в административном веб интерфейсе.
Поле «Ключ» является необязательным к заполнению. На соответствующих вкладках можно добавить описание ресурса и метаданные. Как правило, метаданные используются для разработки сторонних приложений с помощью API.
Во вкладке «Набор тайлов» необходимо загрузить набор тайлов в формате MBTiles или zip-архив. Тайлы должны быть в формате PNG или JPEG и иметь размер 256х256 пикселей.
Во вкладке «Тайловый кэш» пользователь может задать настройки кэширования:
Включение - включение/выключение кэширования тайлов;
Разрешить тайлы для запросов изображений - при запросе изображения (не тайла) использовать закэшированные тайлы при их наличии;
Максимальный масштабный уровень - пороговое значение, выше которого обращение к кэшу не происходит, изображение карты рендерится на лету;
TTL, сек (Time to live) - “время жизни” или хранения тайлов на сервере в секундах, после которого при следующем запросе изображение будет формироваться заново. Если TTL = 0, то время хранения тайлов не ограничено;
Очистить - write only - очищает тайловый кэш при сохранении стиля.
После заполнения всех полей нажатие кнопки Создать завершает процесс создания ресурса Набор тайлов.
6.5.11. Cервис WFS¶
Создание сервиса WFS¶
Настройка сервиса WFS осуществляется так же, как для WMS-сервиса, только добавляется не стиль, а слой.
Примечание
На данный момент поддерживаются фильтры Intersects, ResourceId (ObjectId, FeatureId).
NextGIS Web является сервером WFS - может публиковать сервисы WFS на базе векторных слоёв. Используя эти сервисы, сторонние программы могут изменять векторные данные на сервере. Поддерживаемые версии протокола WFS: 1.0, 1.1, 2.0, 2.0.2.
Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Сервис WFS (Рис. 6.73.).
На вкладке Ресурс указывается наименование сервиса (Рис. 6.74.). Поле «Ключ» предназначено для разработчиков, заполенять его не обязательно.
На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 6.75.)
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 6.76.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
Вкладка «Сервис WFS» отвечает за слои, включаемые в сервис (Рис. 6.77.). Для каждого добавленного слоя нужно указать число возвращаемых из базы объектов. По умолчанию это значение равно 1000. Если в этом поле значение убрать совсем, то ограничение будет снято и будут передаваться все объекты. Однако это может привести к значительной нагрузке на сервер и значительным задержкам при передаче больших объемов данных.
Использование сервиса WFS¶
После создания ресурса вам будет доступен URL сервиса WFS, который вы можете использовать в других программах, например NextGIS QGIS.
Если это необходимо, можно настроить права доступа к сервису WFS (см. главу ngw_access_rights).
Программно подключаться к созданным сервисам WFS можно по ссылкам следующего вида (также поддерживается basic auth):
https://mywebgis.nextgis.com/api/resource/2413/wfs?SERVICE=WFS&TYPENAME=ngw_id_2412&username=administrator&password=mypassword&srsname=EPSG:3857&VERSION=1.0.0&REQUEST=GetFeature
6.5.12. Cервис OGC API Features¶
Создание сервиса OGC API Features¶
Настройка сервиса OGC API Features осуществляется так же, как для WFS-сервиса.
NextGIS Web является сервером OGC API Features - может публиковать сервисы OGC API Features на базе векторных слоёв. Используя эти сервисы, сторонние программы могут изменять векторные данные на сервере. Поддерживаемые версии протокола OGC API Features: 1.0.0.
Для развёртывания сервиса OGC API Features нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Сервис OGC API Features. (Рис. 6.78.).
На вкладке Ресурс указывается наименование сервиса (Рис. 6.79.). Поле «Ключ» предназначено для разработчиков, заполенять его не обязательно.
На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 6.80.)
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 6.81.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.
Вкладка «Сервис OGC API Features» отвечает за слои, включаемые в сервис (Рис. 6.82.). Для каждого добавленного слоя нужно указать число возвращаемых из базы объектов. По умолчанию это значение равно 1000. Если в этом поле значение убрать совсем, то ограничение будет снято и будут передаваться все объекты. Однако это может привести к значительной нагрузке на сервер и значительным задержкам при передаче больших объемов данных.
Использование сервиса OGC API Features¶
После создания ресурса вам будет доступен URL сервиса OGC API Features, который вы можете использовать в других программах, например QGIS.
Если это необходимо, можно настроить права доступа к сервису OGC API Features (см. главу ngw_access_rights).
Программно подключаться к созданным сервисам OGC API Features можно по ссылкам следующего вида (также поддерживается basic auth):
https://yourwebgis.nextgis.com/api/resource/208/ogcf
6.5.13. Создание группы ресурсов¶
Ресурсы можно объединять в группы. Например, в одну группу можно сложить базовые данные, в другую группу – космические снимки, в третью – тематические данные и т.д.
Группы служат для удобной организации слоев в панели управления, а также для удобного назначения прав доступа.
Для создания группы ресурсов необходимо перейти в ту группу (корневая или др.), где будет создана новая группа ресурсов. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Группа ресурсов (см. Рис. 6.83.).
При этом откроется окно, представленное на Рис. 6.84..
В открывшемся окне необходимо указать название группы, которое будет отображаться в административном веб интерфейсе, а также в дереве слоев карты, и нажать кнопку Создать.
Поле «Ключ» является необязательным к заполнению.
Можно добавить описание ресурса и метаданные на соответствующих вкладках. Как правило, метаданные используются для разработки сторонних приложений с помощью API.
6.5.14. Справочник¶
Для создания справочника необходимо перейти в ту группу ресурсов (корневая или др.), где будет создана справочник. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Справочник (см. Рис. 6.85.).
Во вкладке Ресурс указываетя название справочника. Оно будет отображаться в административном интерфейсе и дереве слоев веб-карты после добавления. Поле Ключ является необязательным к заполнению.
На вкладке «Справочник» введите данные в виде «ключ - значение». Также можно добавить справочник, импортировав его из файла.
Можно добавить описание ресурса и метаданные на соответствующих вкладках. Как правило, метаданные используются для разработки сторонних приложений с помощью API.
После ввода необходимых данных следует нажать на кнопку Сохранить. Окно примет вид Рис. 6.88..
Для внесения изменений в справочник следует в панели операций «Действие» выбрать Изменить, после чего откроется окно для редактирования данных ресурса. В окне необходимо перейти на вкладку «Справочник», на которой можно изменить состав значений справочника:
добавить новую пару ключ - значение
изменить текущую пару ключ - значение
удалить пару ключ - значение
Также можно экспортировать справочник в формате CSV.
Справочник можно также подключить к векторному слою, это позволит выбирать значение атрибута из списка. Для этого перейдите в редактирование векторного слоя, во вкладке Атрибуты выберите нужную строку и нажмите на стрелку вниз в колонке Справочник.
6.5.15. Библиотека маркеров SVG¶
Ресурс позволяет создавать библиотеки SVG-иконок (маркеров) для их последующего отображения на веб-карте с помощью QGIS стилей векторных слоев. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Библиотека маркеров SVG (см. Рис. 6.89.).
Откроется окно создания ресурса. На первой вкладке введите название ресурса маркеров (см. Рис. 6.90.).
При необходимости добавьте описание и метаданные на соответствующих вкладках. Как правило, метаданные используются для разработки сторонних приложений с помощью API. На вкладке «Библиотека SVG маркеров» необходимо загрузить svg-маркеры с вашего устройства (см. Рис. 6.91.). Маркеры можно загрузить как отдельными файлами, так и zip-архивом. В архиве не должно быть ничего, кроме маркеров.
После загрузки всех иконок в библиотеку они отобразятся списком с именами файлов. Для завершения создания ресурса необходимо нажать кнопку Создать.
Процесс добавления библиотек маркеров к стилю векторного слоя описан здесь.
6.5.16. Типовая структура¶
С учетом опыта использования NextGIS Web рекомендуется следующая типовая структура организации ресурсов.
Типовая структура
Основная группа ресурсов
Веб-карты
Основная веб-карта
Тестовая веб-карта
Подключения PostGIS
PostGIS на сервере
Слои данных
Базовые данные
Границы объектов
Инфраструктура - линейные объекты
Учётные площадки
Тематические данные
Результаты замеров на учётных площадках
Результаты замеров на учётных маршрутах
Точки встреч редких видов
Рельеф
ASTER DEM
ЦМР
Изолинии
Топографические данные
Openstreetmap
Автодороги
Административные границы
Гидросеть
Железнодорожные станции
Железные дороги
Землепользование
1 : 100000
M-37-015
M-37-016
M-37-017
Съёмка
Landsat-8
Ikonos