5.5. Добавление ресурсов

NextGIS Web строится на ресурсном подходе - каждый компонент системы (слой, группа, сервис) является её ресурсом. Одним из таких типов ресурсов является слой - растровое изображение или векторный файл (таблица базы данных).

Для каждого слоя может быть создано неограниченное количество стилей - способов визуализации геоданных на веб-карте.

Интерфейс добавления PostGIS, векторных и растровых слоев приблизительно одинаковый - создается ресурс слоя, внутри него - ресурсы стилей. Последние визуализируют данные на веб-карте.

5.5.1. Подложка веб-карты

В блоке операций выберите из списка «Подложка веб-карты» (Рис. 5.22.). В открывшемся окне введите название ресурса, которое будет отображаться в административном интерфейсе (Рис. 5.23.).

../../_images/ngweb_admin_create_basemap_rus.png

Рис. 5.22. Выбор ресурса «Подложка веб-карты»

../../_images/ngweb_admin_basemap_name_rus.png

Рис. 5.23. Наименование подложки веб-карты

На соответствующих вкладках настраивается «Описание» и «Метаданные» ресурса (Рис. 5.24.).

../../_images/ngweb_admin_basemap_desc_rus.png

Рис. 5.24. Описание подложки веб-карты

На вкладке «Подложка веб-карты» задается URL-адрес TMS сервиса (Рис. 5.25.). Есть два пути для его указания:

  • Использовать настройки из QMS. Если установлен данный флаг, то необходимо найти нужный сервис в строке поиска.

  • Ввести адрес вручную. Работает, если флаг QMS снят.

../../_images/ngweb_admin_basemap_param_rus.png

Рис. 5.25. Параметры подложки веб-карты

5.5.2. Растровый слой

Растровые изображения в NextGIS Web загружаются через специальный ресурс «Растровый слой».

Процесс создания

Перейдите в группу ресурсов (папку), в которой необходимо создать рстровый слой. В блоке операций «Создать ресурс» выберите из списка «Растровый слой» (см. Рис. 5.26.).

../../_images/ngweb_admin_layers_create_raster_layer_rus.png

Рис. 5.26. Выбор действия «Растровый слой»

В открывшемся окне укажите наименование растрового слоя (см. Рис. 5.27.). Оно будет отображаться в административном интерфейсе. Поле «Ключ» является необязательным к заполнению.

../../_images/ngweb_admin_layers_create_raster_layer_resourse_name_rus.png

Рис. 5.27. Наименование растрового слоя

На вкладке «Описание» можно добавить произвольный текст, описывающий содержимое данного слоя (Рис. 5.28.).

../../_images/ngweb_admin_admin_layers_create_raster_layer_resourse_description_rus.png

Рис. 5.28. Описание растрового слоя

В «Метаданные» слоя можно записать информацию в формате «ключ-значение» (Рис. 5.29.).

../../_images/ngweb_admin_admin_layers_create_raster_layer_resourse_description_metadata_rus.png

Рис. 5.29. Метаданные растрового слоя

На вкладке «Растровый слой» необходимо загрузить файл геоданных в формате GeoTIFF. В зависимости от тарифного плана в окне отображается максимально допустимый объем загружаемого файла (Рис. 5.30.).

../../_images/ngweb_admin_layers_create_raster_layer_upload_rus.png

Рис. 5.30. Окно загрузки растрового файла

После загрузки файла нажмите кнопку Создать.

Стиль 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

5.5.3. Векторный слой из файла

В NextGIS Web можно создавать векторные слои на основе геоданных в форматах ESRI Shape, GeoJSON, KML и GML.

Процесс создания

Перейдите в группу ресурсов (папку), в которой необходимо создать векторный слой. В блоке операций «Создать ресурс» выберите из списка «Векторный слой» (см. Рис. 5.31.).

../../_images/ngweb_admin_layers_create_vector_layer_rus.png

Рис. 5.31. Выбор действия «Векторный слой».

В открывшемся окне укажите название векторного слоя (Рис. 5.32.). Оно будет отображаться в административном интерфейсе. Поле «Ключ» является необязательным к заполнению.

../../_images/ngweb_admin_layers_create_vector_layer_resourse_name_rus.png

Рис. 5.32. Наименование векторного слоя

На вкладке «Описание» можно добавить произвольный текст, описывающий содержимое данного слоя (Рис. 5.33.).

../../_images/ngweb_admin_layers_create_vector_layer_resourse_description_rus.png

Рис. 5.33. Описание векторного слоя

В «Метаданные» слоя можно записать информацию в формате «ключ-значение» (Рис. 5.34.).

../../_images/ngweb_admin_layers_create_vector_layer_resourse_metadata_rus.png

Рис. 5.34. Метаданные векторного слоя

На вкладке «Векторный слой» необходимо загрузить файл геоданных в формате ESRI Shapefile (zip-архив), GeoJSON, GML или KML. В зависимости от тарифного плана в окне отображается максимально допустимый объем загружаемого файла (Рис. 5.35.). NextGIS Web может принимать многослойные наборы данных на входе. Если в архиве содержится несколько слоёв, то после его загрузки пользователю будет предложено выбрать слой, на основе которого будет создан ресурс «Векторный слой».

Ниже предлагается определить дополнительные параметры создания векторного слоя. В зависимости от качества данных можно следующим образом обрабатывать ошибки геометрии при загрузке файла:

  • Не исправлять ошибки

  • Исправлять без потери данных (если это будет возможно)

  • Исправлять с возможными потерями

Исходя из данных далее указываются тип геометрии, наличие/отсутствие мультигеометрий, Z-координаты и источник FID (field-ID, определять автоматически или указать из определенного поля). На выбор представлены две кодировки - Юникод UTF-8 или Кириллица Windows-1251. Если в ESRI Shapefile присутствует файл с описанием кодировки [расширение .cpg], то он будет учитываться при загрузке. Для формата GeoJSON кодировка всегда должна быть UTF-8. Подробнее о дополнительных параметрах можно прочитать здесь.

../../_images/ngweb_admin_layers_create_vector_layer_upload_rus.png

Рис. 5.35. Окно загрузки векторного файла

После загрузки файла и указания параметров нажмите кнопку Создать.

Далее можно создавать стиль, который в последующем будет визуализировать данные слоя на веб-карте.

Требования к исходным данным

В качестве исходного файла можно загружать следующие форматы:

Примечание

В случае ESRI Shapefile все составляющие его части (dbf, shp, shx, prj и др.) должны быть упакованы в архив формата Zip. Шейп-файл должен быть в кодировке UTF-8 или Windows-1251.

Примечание

Мы рекомендуем не использовать кириллицу в названиях полей атрибутов. Несмотря на то, что в большинстве случаев такие данные могут быть загружены в Веб ГИС и показаны на картах, в некоторых случаях вы можете испытывать проблемы с работой с такими данными в NextGIS Mobile и визуализацией (особенно если условные обозначения сформированы на базе одного из таких полей). Переименуйте поля латиницей перед загрузкой и используйте синонимы полей (алиасы) для их отображения кириллицей на картах.

Предупреждение

Во входном файле не должно быть полей с названиями: id (ID), geom(GEOM). Если загрузка выполнена с такими названиями полей, то после их можно переименовать через настройки слоя.

Предупреждение

Для работы по протоколу WFS названия атрибутов могут начинаться только с буквы или нижнего подчёркивания(_), в названии атрибутов допустимы только буквы, цифры, нижнее подчёркивание (_), тире (-) и точки(.).

5.5.4. Векторный слой из PostGIS

Для добавления векторного слоя из БД PostgreSQL с модулем расширения PostGIS необходимо сначала создать ресурс — соединение PostGIS.

Соединение PostGIS

Для этого в блоке операций «Создать ресурс» следует выбрать «Cоединение PostGIS» (см. Рис. 5.36.).

../../_images/admin_layers_create_postgis_connection_resourse_rus.png

Рис. 5.36. Выбор действия «Соединение PostGIS»

В открывшемся окне укажите наименование PostGIS соединения (Рис. 5.37.). Оно будет отображаться в административном интерфейсе (не путайте это наименование и название слоёв в базе данных). Поле «Ключ» является необязательным к заполнению.

../../_images/admin_layers_create_postgis_connection_resourse_name_rus.png

Рис. 5.37. Наименование соединения PostGIS

На вкладке «Описание» можно добавить произвольный текст, описывающий создаваемый ресурс (Рис. 5.38.).

../../_images/admin_layers_create_postgis_connection_resourse_description_rus.png

Рис. 5.38. Описание соединения PostGIS

В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 5.39.).

../../_images/admin_layers_create_postgis_connection_resourse_metadata_rus.png

Рис. 5.39. Метаданные соединения PostGIS

На вкладке «Cоединение PostGIS» необходимо ввести параметры подключения к БД PostGIS, из которой будут забираться ваши данные (Рис. 5.40.).

../../_images/admin_layers_create_postgis_connection_db_logins_rus.png

Рис. 5.40. Окно параметров соединения PostGIS.

После указания параметров нажмите кнопку Создать.

Слой PostGIS

Далее можно приступать к добавлению отдельных слоёв PostGIS. Для этого в блоке операций необходимо выбрать «Слой PostGIS» (см. Рис. 5.41.).

../../_images/admin_layers_create_postgis_layer_rus.png

Рис. 5.41. Выбор действия «Слой PostGIS»

На вкладке «Ресурс» указывается наименование слоя PostGIS (Рис. 5.42.). Оно будет отображаться в административном интерфейсе и дереве слоев веб-карты после добавления. Поле Ключ является необязательным к заполнению.

../../_images/admin_layers_create_postgis_layer_resourse_name_rus.png

Рис. 5.42. Наименование Слоя PostGIS

В «Описании» можно задать произвольный текст, отражающий содержание ресурса (Рис. 5.43.).

../../_images/admin_layers_create_postgis_layer_resourse_description_rus.png

Рис. 5.43. Описание слоя PostGIS.=

На соответствующей вкладке есть возможность добавить метданные слоя PostGIS (Рис. 5.44.).

../../_images/admin_layers_create_postgis_layer_resourse_metadata_rus.png

Рис. 5.44. Метаданные слоя PostGIS

На вкладке «Слой PostGIS» настраиваются параметры слоя (Рис. 5.45.).

../../_images/admin_layers_create_postgis_layer_tablename_rus.png

Рис. 5.45. Окно параметров слоя PostGIS

Здесь необходимо выполнить следующие действия:

  1. Из выпадающего списка выбрать подключение к БД (созданное ранее).

  2. Ввести схему БД, в которой находится слой PostGIS.

    В одной базе данных PostgreSQL может быть несколько схем, внутри каждой схемы лежат таблицы и представления. Если схема одна, то она называется public. Подробнее смотрите в руководствах по СУБД PostgreSQL.

  3. Ввести название таблицы (слоя PostGIS).

    Вам потребуется знать названия ваших таблиц и полей в базе данных. Отображение таблиц и представлений не входит в задачи NextGIS Web. Для просмотра можно воспользоваться NextGIS QGIS или PgAdmin.

  4. Ввести «Поле ID».

    При загрузке данных в PostGIS через NextGIS QGIS обычно создается поле с названием ogc_fid, при загрузке иным способом название поля может отличаться. Поле ID должно удовлетворять ограничениям на тип данных: быть числовым (numeric) и являться первичным ключом.

  5. Ввести «Поле геометрии».

    При загрузке данных в PostGIS через NextGIS QGIS обычно создается поле геометрии с названием wkb_geometry, при загрузке иным способом название поля может отличаться.

  6. Поля «Тип геометрии», «Система координат», «Описание атрибутов» и «SRID» являются не обязательными, и их значения могут быть оставлены по умолчанию.

После указания параметров нажмите кнопку Создать.

Детали

Программное обеспечение NextGIS Web поддерживает добавление таблиц, в которых в поле геометрии хранятся совместно точечные, линейные и полигональные геометрии. Это необходимо для отображения специфических наборов данных: например, если в одной таблице хранятся координаты городских парков в виде полигонов и мусорных урн в виде точек. В этом случае в NextGIS Web нужно добавить три отдельных слоя для каждого типа геометрии, и выбрать нужный элемент в поле «Тип геометрии».

После создания слоя для отображения подписей к геометриям необходимо задать атрибут наименования. Для этого следует зайти на страницу редактирования слоя и выбрать нужное поле в списке «Атрибут наименования».

Если в БД были изменены какие либо данные, касающиеся структуры (названия или типы полей, изменен их состав, переименованы таблицы и т. п.), то в свойствах соответствующего слоя необходимо обновить описания атрибутов. Для этого для выбранного слоя следует выбрать действие «Изменить», на вкладке «Слой PostGIS» в поле «Описания атрибутов» выбрать «Загрузить» из базы данных и нажать «Сохранить».

Возможные проблемы со слоями PostGIS

Вы создали подключение и пытаетесь создать на его основе слой PostGIS.

Если вы получаете ошибку:

  1. Невозможно подключиться к базе данных!

Проверьте, доступна ли база данных к которой вы подключаетесь, правильная ли у вас учетная запись. Это удобно делать через pgAdmin или QGIS.

Имейте в виду, что база может быть временно отключена или изменились параметры доступа.

Создание слоя с условиями

В NextGIS Web нельзя указывать условия отбора записей из слоя (SQL конструкция WHERE). Это делается для обеспечения безопасности (исключения атак SQL Injection). Для обеспечения такой возможности необходимо в БД создать представления с соответствующими условиями отбора.

Для этого необходимо подключится к БД PostgreSQL/PostGIS при помощи pgAdminIII, перейти в схему данных, где следует создать представление и в элементе дерева «Представления» правой клавишей мыши вызвать контекстное меню и выбрать «Создать новое представление» (см. Рис. 5.46.. п. 1). Также диалог можно вызвать правым кликом на названии схемы, выбрав «Новый объект» и далее «Новое представление». Далее в открывшемся диалоге необходимо указать:

  1. Название представления (вкладка «Свойства»).

  2. Схему данных, в которой необходимо создать представление (вкладка «Свойства»).

  3. Необходимый SQL запрос (вкладка «Определение»).

../../_images/pgadmin3_rus.png

Рис. 5.46. Главное окно ПО pgAdminIII.

Цифрами на рисунка обозначено: 1 – дерево элементов базы данных; 2 – кнопка открытия таблицы (активна при выделенной таблице); 3 – содержимое запроса в представлении.

После этого, не выходя из pgAdminIII, можно открыть представление для проверки корректности введенного SQL запроса (см. Рис. 5.46.. п. 2).

5.5.5. Cлой WMS

Программное обеспечение NextGIS Web является клиентом WMS. Для подключения слоя WMS необходимо знать его адрес. Сервер WMS, предоставляющий подключаемый слой, должен отдавать его в том числе в системе координат EPSG:3857. Проверить наличие этой системы координат для подключаемого слоя можно, сделав запрос GetCapabilites к серверу и посмотрев результат. Например, слой WMS, предоставляемый Geofabrik (GetCapabilities), умеет отдавать данные в EPSG:4326 и EPSG:900913. Хотя фактически EPSG:900913 и EPSG:3857 - это одно и то же, но NextGIS WEB запрашивает данные в 3857, а этот сервер WMS такую проекцию не поддерживает.

Соединение WMS

Для добавления слоя WMS необходимо сначала создать подключение к серверу WMS (достаточно одного соединения для множества слоёв). Для этого в блоке операций «Создать ресурс» следует выбрать Cоединение WMS (см. Рис. 5.47.).

../../_images/admin_layers_create_wms_connection_rus.png

Рис. 5.47. Выбор действия «Cоединение WMS»

В открывшемся окне укажите наименование WMS соединения (Рис. 5.48.). Оно будет отображаться в административном интерфейсе (не путайте это наименование и названия слоёв в базе данных). Поле «Ключ» является необязательным к заполнению.

../../_images/admin_layers_create_wms_connection_name_rus.png

Рис. 5.48. Наименование Соединения WMS

На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 5.49.)

../../_images/admin_layers_create_wms_connection_description_rus.png

Рис. 5.49. Описание Соединения WMS

В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 5.50.).

../../_images/admin_layers_create_wms_connection_metadata_rus.png

Рис. 5.50. Метаданные Соединения WMS

На вкладке «Cоединение WMS» необходимо ввести параметры подключения (Рис. 5.51.) к Серверу WMS, который предоставляет данные:

  • URL

  • Имя пользователя

  • Пароль

  • Версия WMS

  • Возможности (управление запросом GetCapabilites к WMS-серверу)

../../_images/admin_layers_create_wms_connection_url_rus.png

Рис. 5.51. Окно параметров Cоединения WMS

После указания параметров нажмите кнопку Создать.

Слой WMS

Далее можно приступать к добавлению отдельных слоёв WMS. Для этого следует перейти в группу, где необходимо создать слой и в блоке операций выбрать Слой WMS (см. Рис. 5.52.).

../../_images/admin_layers_create_wms_layer_rus.png

Рис. 5.52. Выбор действия «Слой WMS»

На вкладке Ресурс указывается наименование слоя WMS (Рис. 5.53.). Оно будет отображаться в административном интерфейсе и дереве слоев веб-карты после добавления. Поле Ключ является необязательным к заполнению.

../../_images/admin_layers_create_wms_layer_name_rus.png

Рис. 5.53. Наименование слоя WMS

На вкладке Описание можно добавить произвольный текст, описывающий содержимое слоя (Рис. 5.54.).

../../_images/admin_layers_create_wms_layer_description_rus.png

Рис. 5.54. Описание слоя WMS

Настройки тайлового кэша подробнее описаны в данном разделе.

На соответствующей вкладке есть возможность добавить метаданные слоя в формате «ключ-значение» (Рис. 5.55.).

../../_images/admin_layers_create_wms_layer_metadata_rus.png

Рис. 5.55. Метаданные слоя WMS

На вкладке «Слой WMS» настраиваются параметры (Рис. 5.56.):

  • Выбор Соединения WMS (созданного ранее)

  • Формат изображения (список MIME-типов данных, предоставляемых сервером)

  • Выбор слоя из списка (можно выбрать несколько)

../../_images/admin_layers_create_wms_layer_parameters_rus.png

Рис. 5.56. Окно настройки параметров слоя WMS

На последней вкладке добавляются вендор параметры (Рис. 5.57.). Это нестандартные параметры запроса, которые определяются реализацией для обеспечения расширенных возможностей и зависят от поставщика WMS.

../../_images/admin_layers_create_wms_layer_vendorparameters_rus.png

Рис. 5.57. Вендор параметры слоя WMS

После указания параметров нажмите кнопку Создать.

Предупреждение

Идентификационные запросы к внешним WMS сервисам с Веб карт не поддерживаются.

5.5.6. Сервис WMS

Создание WMS-сервиса

Программное обеспечение NextGIS Web может работать как сервер WMS. По этому протоколу клиенты запрашивают картинку карты по заданному охвату.

Для развёртывания WMS-сервиса необходимо добавить ресурс. Для этого в блоке операций «Создать ресурс» следует выбрать Сервис WMS (см. Рис. 5.58.).

../../_images/admin_layers_create_wms_service_rus.png

Рис. 5.58. Выбор действия «Сервис WMS»

На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 5.59.)

../../_images/admin_layers_create_wms_description_rus.png

Рис. 5.59. Описание Сервиса WMS

В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 5.60.).

../../_images/admin_layers_create_wms_metadata_rus.png

Рис. 5.60. Метаданные Сервиса WMS

На вкладке «Сервис WMS» необходимо добавить ссылки на стили нужных слоев. Для каждого добавленого стиля нужно указать уникальный ключ, который можно скопировать из названия, (Рис. 5.61.) и диапазон масштабных уровней отображения данных.

../../_images/admin_layers_create_wms_service_url_rus.png

Рис. 5.61. Окно параметров соединения WMS

После создания ресурса выведется сообщение с URL WMS-сервиса, который можно использовать в других программах, например NextGIS QGIS, или JOSM. Далее необходимо настроить права доступа к WMS-сервису (см. Настройка прав доступа) для стороннего использования различными пользователями.

Cлой NextGIS Web можно добавлять в настольные, мобильные и Веб ГИС различными способами.

Использование сервиса WMS

NextGIS Web является сервером WMS. Соответственно подключить созданные в нем сервисы WMS можно в любом клиентском ПО, поддерживающем протокол WMS. Для этого нужно знать URL WMS-сервиса, который высвечивается на странице настроек конкретного сервиса.

Например:

https://demo.nextgis.com/api/resource/4817/wms?

Для использования сервиса через утилиты GDAL нужно создать для него файл XML. Для создания такого файла нужно знать URL сервиса WMS. Эти параметры нужно подставить в строку ServerUrl примера ниже. Все остальное остается неизменным.

<GDAL_WMS>
 <Service name="WMS">
     <Version>1.1.1</Version>
     <ServerUrl>https://demo.nextgis.com/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

5.5.7. Слой TMS

Соединение TMS

Для добавления слоя TMS сначала необходимо создать ресурс соединение TMS. Для этого следует в блоке операций Создать ресурс выбрать TMS connection (см. Рис. 5.62.).

../../_images/TMS_connection_create.png

Рис. 5.62. Выбор ресурса Соединение TMS

Далее необходимо ввести наименование подключения, которое будет отображаться в административном веб интерфейсе (см. Рис. 5.63.).

../../_images/TMS_connection_name.png

Рис. 5.63. Наименование ресурса Соединение TMS

Поле «Ключ» является необязательным к заполнению. На соответствующих вкладках можно добавить описание ресурса и метаданные. Вкладка TMS connection отвечает за выбор и настройку одного из способов подключения к TMS серверу - настраиваемый или из геосервисов NextGIS (см. Рис. 5.64.).

../../_images/TMS_connection_type.png

Рис. 5.64. Настройка способа подключения TMS

В случае настраиваемого способа подключения пользователь должен указать шаблон URL, параметры ключа API и используемую тайловую схему. Для геосервисов NextGIS указывается только пользовательский API-key. После заполнения всех полей нажатие кнопки Создать завершает процесс создания ресурса TMS Connection.

Слой TMS

Ресурс Слой TMS добавляется на базе созданного ранее подключения TMS Connection. Для этого следует выбрать соответствующий тип ресурса из меню создания (см. Рис. 5.65.).

../../_images/TMS_layer_create.png

Рис. 5.65. Выбор ресурса Слой TMS

На первой вкладке указывается наименование слоя для отображения в административном интерфейсе (см. Рис. 5.66.).

../../_images/TMS_layer_name.png

Рис. 5.66. Наименование TMS слоя

Кэширование обеспечивает повышение скорости отображения слоев веб карты. Настройки тайлового кэша подробнее описаны в данном разделе.

После создания слоя пользователь может добавить его на веб-карту для отображения. Добавляется именно слой TMS, стиль для него не нужен.

Использование сервиса TMS

NextGIS Web является сервером TMS. Соответственно подключить созданные в нем слои/стили можно в любом клиентском ПО, поддерживающем протокол TMS. Для этого нужно знать URL сервиса TMS.

Ссылка формируется следующим образом, пример:

https://demo.nextgis.com/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.com/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>

5.5.8. Cервис WFS

Создание WFS-сервиса

Настройка сервиса WFS осуществляется так же, как для WMS-сервиса, только добавляется не стиль, а слой.

Предупреждение

Названия полей векторного слоя, на базе которого создается сервис WFS, не должны содержать кириллических символов.

Примечание

На данный момент поддерживаются фильтры Intersects, ResourceId (ObjectId, FeatureId).

NextGIS Web может работать как сервер WFS. По этому протоколу сторонние программы могут изменять векторные данные на сервере. Поддерживаемые версии протокола WFS: 1.0, 1.1, 2.0, 2.0.2.

Для развёртывания сервиса WFS необходимо добавить ресурс. Для этого в блоке операций «Создать ресурс» следует выбрать Сервис WFS (Рис. 5.67.).

../../_images/admin_layers_create_wfs_service_rus.png

Рис. 5.67. Выбор действия «Сервис WFS»

На вкладке «Ресурс» указывается наименование сервиса (Рис. 5.68.). Поле «ключ» предназначено для задач сторонней разработки и к заполению не обязательно.

../../_images/admin_layers_create_wfs_service_name_rus.png

Рис. 5.68. Наименование Сервиса WFS

На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 5.69.)

../../_images/admin_layers_create_wfs_description_rus.png

Рис. 5.69. Описание Сервиса WFS

В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 5.70.).

../../_images/admin_layers_create_wfs_metadata_rus.png

Рис. 5.70. Метаданные Сервиса WFS

Вкладка «Серсвис WFS» отвечает за слои, включаемые в сервис (Рис. 5.71.). Для каждого добавленого слоя нужно указать уникальный ключ на латинице и число возвращаемых из базы объектов. По умолчанию это значение равно 1000. Если в этом поле значение убрать совсем, то ограничение будет снято и будут передаваться все объекты. Однако, это может привести к значительной нагрузке на сервер и значительным задержкам при передаче больших объемов данных.

../../_images/admin_layers_create_wfs_service_settings_rus.png

Рис. 5.71. Окно параметров сервиса WFS

Для каждого слоя так же можно задать ограничение на количество передаваемых объектов за один раз. По умолчанию это значение равно 1000.

Использование сервиса WFS

После создания ресурса вам будет доступен URL WFS-сервиса, который вы можете использовать в других программах, например NextGIS QGIS.

Далее необходимо настроить права доступа к WFS-сервису (см. главу Настройка прав доступа).

Программно подключаться к созданным сервисам 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

5.5.9. Создание группы ресурсов

Ресурсы можно объединять в группы. Например, в одну группу можно сложить базовые данные, в другую группу – космические снимки, в третью – тематические данные и т.д.

Группы служат для удобной организации слоев в панели управления, а также для удобного назначения прав доступа.

Для создания группы ресурсов необходимо перейти в ту группу (корневая или др.), где будет создана новая группа ресурсов, и в блоке операций «Создать ресурс» выбрать «Группа ресурсов» (см. Рис. 5.72.).

../../_images/admin_layers_create_resource_group_rus.png

Рис. 5.72. Выбор действия «Группа ресурсов».

При этом откроется окно, представленное на Рис. 5.73..

../../_images/admin_layers_create_group_rus.png

Рис. 5.73. Окно создания группы ресурсов.

В открывшемся окне необходимо указать название группы, которое будет отображаться в административном веб интерфейсе, а также в дереве слоев карты, и нажать кнопку «Создать».

Поле «Ключ» является необязательным к заполнению.

Можно добавить описание ресурса и метаданные на соответствующих вкладках.

5.5.10. Cправочники

Для создания справочника необходимо перейти в ту группу ресурсов (корневая или др.), где будет создана справочник, и в блоке операций «Создать ресурс» выбрать «Справочник» (см. Рис. 5.74.).

../../_images/admin_layers_create_lookup_table_rus.png

Рис. 5.74. Выбор действия «Справочник»

При этом откроется окно, представленное на Рис. 5.75..

../../_images/ngweb_admin_layers_create_lookup_rus.png

Рис. 5.75. Окно создания справочника

В открывшемся окне необходимо указать название справочника.

Поле «Ключ» является необязательным к заполнению.

Можно добавить описание ресурса и метаданные на соответствующих вкладках.

Если переключиться с вкладки «Ресурс» на вкладку «Справочник», откроется окно, представленное на Рис. 5.76..

../../_images/ngweb_creating_a_new_directory.png

Рис. 5.76. Окно параметров справочника

Откроется окно в виде таблицы с кнопками «Добавить» и «Удалить». При нажатии на кнопку «Добавить» выпадает вкладка «Text», которая предоставляет возможность ввести данные справочника в виде «ключ» - «значение». После ввода необходимых данных, следует нажать на кнопку «Сохранить». Окно примет вид Рис. 5.77..

../../_images/ngweb_new_resource.png

Рис. 5.77. Создание нового ресурса

Для внесения изменений в справочник следует в панели операций «Действие» выбрать «Изменить», после чего откроется окно для редактирования данных ресурса. В окне необходимо перейти на вкладку «Справочник» на которой можно изменить состав значений справочника:

  • добавить новую пару ключ - значение

  • изменить текущую пару ключ - значение

  • удалить пару ключ - значение

5.5.11. Библиотека маркеров SVG

Ресурс позволяет создавать библиотеки svg-иконок (маркеров) для их последующего отображения на веб-карте с помощью QGIS стилей векторных слоев. Для создания библиотеки необходимо выбрать Библиотека маркеров SVG в блоке операций с правой стороны (см. Рис. 5.78.).

../../_images/select_svg_lib.png

Рис. 5.78. Выбор ресурса Библиотека маркеров SVG

Откроется окно создания ресурса. На первой вкладке введите название ресурса маркеров (см. Рис. 5.79.).

../../_images/name_svg_lib.png

Рис. 5.79. Название ресурса Библиотеки маркеров SVG

При необходимости добавьте описание и метаданные на второй и третьей вкладке. На четвертой вкладке необходимо загрузить svg-маркеры с вашего устройства (см. Рис. 5.80.). Маркеры можно загрузить как отдельными файлами, так и zip-архивом. В архиве не должно быть ничего, кроме маркеров.

../../_images/upload_svg.png

Рис. 5.80. Загрузка SVG-маркера

После загрузки всех иконок в библиотеку они отобразятся списком с именами файлов. Для завершения создания ресурса необходимо нажать кнопку Создать (см. Рис. 5.81.).

../../_images/create_svg_lib.png

Рис. 5.81. Создание библиотеки маркеров SVG

../../_images/list_svg.png

Рис. 5.82. Список загруженных в библиотеку SVG-маркеров

Процесс добавления библиотек маркеров к стилю векторного слоя описан здесь.

5.5.12. Типовая структура

С учетом опыта использования NextGIS Web рекомендуется следующая типовая структура организации ресурсов.

Типовая структура

Основная группа ресурсов
      Веб-карты
              Основная веб-карта
              Тестовая веб-карта
      Подключения PostGIS
              PostGIS на сервере
      Слои данных
              Базовые данные
                      Границы объектов
                      Инфраструктура - линейные объекты
                      Учётные площадки
              Тематические данные
                      Результаты замеров на учётных площадках
                      Результаты замеров на учётных маршрутах
                      Точки встреч редких видов
              Рельеф
                      ASTER DEM
                              ЦМР
                              Изолинии
              Топографические данные
                      Openstreetmap
                              Автодороги
                              Административные границы
                              Гидросеть
                              Железнодорожные станции
                              Железные дороги
                              Землепользование
                      1 : 100000
                              M-37-015
                              M-37-016
                              M-37-017
              Съёмка
                      Landsat-8
                      Ikonos