Туториал: Пространственные данные - хранение, управление, публикация

Доступно

Облако (все редакции), на своём сервере (все редакции), Open Source

NextGIS Web - платформа для хранения, управления и публикации геоданных. В этом пошаговом руководстве вы узнаете, как из ГИС-файлов получить интерактивную веб-карту, тайлы и сервисы OGC, а также как создавать данные и управлять ими напрямую на сервере. Создайте бесплатный аккаунт и попробуйте прямо сейчас!

Скачать пример данных (источники: Портал открытых данных Москвы, ESA)

Базовый уровень

  1. Создание бесплатного аккаунта и Веб ГИС

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

  3. Загрузка векторного слоя

  4. Загрузка стиля

  5. Загрузка растрового слоя

  6. Публикация веб-карты

Продвинутый уровень

  1. Добавление слоя WMS на веб-карту

  2. Добавление подложки

  3. Создание пустого векторного слоя в Веб ГИС

  4. Редактирование слоя в Веб ГИС, вложения

  5. Публикация через OGC API Features

  6. Следующие шаги

Шаг 1/6 Создание бесплатного аккаунта и Веб ГИС

Зайдите на my.nextgis.com, нажмите кнопку Создать аккаунт и зарегистрируйтесь на свой адрес электронной почты.

После регистрации откроется страница аккаунта. Выберите в меню слева пункт Веб ГИС. Придумайте название (мы в этом примере будем использовать test-free.nextgis.com) и выберите ближайший Центр обработки данных (Москва в этом примере). Затем нажмите Создать Веб ГИС.

../../_images/tutorial_create_wg_ru.png

Когда процесс создания завершится, вид страницы изменится. На ней появится прямая ссылка на вашу новую Веб ГИС.

../../_images/tutorial_my_wg_ru.png

Шаг 2/6 Интерфейс Веб ГИС и создание группы ресурсов

Нажмите на адрес Веб ГИС или скопируйте его в строку браузера.

Отроется основной интерфейс вашей Веб ГИС.

../../_images/tutorial_wg_main_ru.png

NextGIS Web состоит из ресурсов. Слои, веб-карты, папки (группы), соединения с сервисами и подключения к базам данных - всё это ресурсы. Ресурсы организованы как файлы на компьютере - в виде «дерева».

Создадим первый ресурс - папку или группу ресурсов - и назовём её «Москва». Чтобы это сделать, нажмите синюю кнопку Создать ресурс в верхней части страницы.

Совет

Если вы не видите кнопки Создать ресурс, вам нужно авторизоваться. Нажмите кнопку Войти в правом верхнем углу и выберите Войти с помощью NextGIS ID.

../../_images/tutorial_log_in_ru.png

Кнопка Создать ресурс открывает окно с типами ресурсов, доступными для создания на той странице, где вы находитесь. Выберите Группа ресурсов.

../../_images/tutorial_select_group_ru.png

Окно создания ресурса состоит из нескольких вкладок. Сейчас нам нужно только задать имя на вкладке «Ресурс».

../../_images/tutorial_create_group_ru.png

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

../../_images/tutorial_group_result_ru.png

Адрес, отображающийся в строке браузера - это путь к ресурсу, а цифры на конце - идентификатор ресурса.

Группа Москва находится внутри Основной группы ресурсов, где мы её создали. Ресурс-родитель показан над наименованием ресурса.

Теперь можно загружать в эту папку данные.

Шаг 3/6 Загрузка и публикация векторного слоя

Скачайте пример данных и распакуйте архив.

В группе ресурсов Москва нажмите Создать ресурс и выберите тип ресурса Векторный слой.

../../_images/tutorial_select_vlayer_ru.png

Отроется интерфейс создания ресурса с несколькими вкладками.

../../_images/tutorial_create_vlayer_upload_ru.png

По умолчанию открыта вкладка Векторный слой. Перетащите в поле загрузки файл bicycle_roads_moscow.geojson из папки с данными, или кликните по полю и выберите файл в открывшемся окне.

Когда файл загрузится, отобразится его размер.

Переключитесь на вкладку Ресурс и введите наименование слоя, например, Велодорожки. Затем нажмите кнопку Создать.

../../_images/tutorial_create_vlayer_name_ru.png

Когда слой будет создан, отроется его страница. Цифры в конце адреса этой страницы - ID слоя.

На этой странице отображается информация о слое:

  • Место в дереве ресурсов (Основная группа ресурсов/Москва);

  • Базовые метаданные (тип геометрии, количество объектов и т.п.);

  • Список полей (структура атрибутов).

../../_images/tutorial_vlayer_result_ru.png

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

Чтобы посмотреть данные, откройте Таблицу объектов, нажав кнопку button_open_feature_table Таблица в меню справа.

../../_images/tutorial_feature_table_ru.png

Выберите любой объект и нажмите Открыть, чтобы посмотреть его.

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

../../_images/tutorial_feature_preview_ru.png

Через Таблицу объектов можно напрямую управлять векторными объектами. Вы можете просматривать и редактировать их как независимые записи базы данных, не используя карту или другие приложения. (Подробнее)

Шаг 4/6 Загрузка стиля

Если вы хотите получить тайлы TMS или добавить слой на веб-карту, нужно определить, как он будет визуализироваться - то есть задать для него стиль. Можно нажать Создать стиль QGIS по умолчанию, но для этого слоя у нас есть файл, определяющий цвета и структуру линий в зависимости от их атрибутов.

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

../../_images/tutorial_select_qstyle_ru.png

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

../../_images/tutorial_create_qstyle_ru.png

Будет создан стиль и откроется его страница. В меню справа нажмите Просмотр, чтобы увидеть, как выглядит стиль.

В разделе Внешний доступ вы найдёте автоматически сгенерированную ссылку, которую можно использовать, чтобы подключить стилизованные данные как тайлы Tiled Map Service, например, в QGIS. Подробнее об использовании TMS

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

Шаг 5/6 Загрузка и публикация растрового слоя

Вернитесь в группу ресурсов Москва, нажав на её имя в пути к ресурсу.

../../_images/tutorial_return_folder_ru.png

Нажмите кнопку Создать ресурс и выберите Растровый слой.

../../_images/tutorial_select_raster_layer_ru.png

На вкладке Растровый слой перетащите из папки с примером файл plan.tif или кликните по полю и выберите файл во всплывающем окне. Затем нажмите кнопку Создать.

../../_images/tutorial_raster_upload_ru.png

Будет создан растровый слой и откроется его страница. На ней отображается:

  • Место в дереве ресурсов (Основная группа ресурсов/Москва);

  • Основные метаданные (каналы, размер и т.п.).

../../_images/tutorial_raster_result_ru.png

В разделе Внешний доступ вы найдёте автоматически сгенерированную ссылку для доступа к данным Cloud Optimized GeoTIFF. Эту ссылку можно сразу использовать для подключения данных во внешние ресурсы.

Визуализация растров происходит через создание дочерних ресурсов стилей. Для растров RGB(A) можно просто нажать Создать стиль QGIS по умолчанию. Давайте так и сделаем. Будет создан стандартный стиль и откроется его страница.

../../_images/tutorial_def_raster_style_result_ru.png

Автоматически будет сгенерирована ссылка на сервис растровых файлов (TMS) на основе этих данных. Вы сразу можете использовать эту ссылку, чтобы подключить стилизованные растровые тайлы во внешние приложения.

Также можно нажать в панели справа Просмотр, чтобы посмотреть на растр с применённым стилем.

../../_images/tutorial_raster_preview_ru.png

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

Шаг 6/6 Публикация веб-карты

Теперь, когда у нас есть несколько слоёв с добавленными к ним стилями, можно опубликовать первую веб-карту. Вернитесь в группу ресурсов Москва и выберите в меню создания ресурса тип Веб-карта.

../../_images/tutorial_select_webmap_ru.png

У веб-карты много разных настроек. На вкладке «Ресурс» введите наименование карты, например, Москва.

../../_images/tutorial_webmap_name_ru.png

На вкладке Слои определяется содержимое карты. Нажмите кнопку button_plus_layer Слой. На карту добавляется визуальное представление данных, поэтому выбрать нужно стиль, а не слой. Флажок выбора при имени слоя будет не активен. Вы можете зайти внутрь слоя и выбрать дочерний ресурс стиля или просто нажать на иконку button_pick_first Выбрать первый подходящий дочерний ресурс справа от слоя. Отметьте стили в слоях Велодорожки и plan.

../../_images/tutorial_webmap_add_layers_ru.png

Нажмите на слой, чтобы настроить его свойства.

../../_images/tutorial_webmap_layer_settings_ru.png

Перейдите на вкладку Настройки. В строке «Начальный охват» нажмите кнопку Вычислить охват из всех слоёв. Теперь карта будет открываться на области, охватывающей все добавленные на неё данные.

../../_images/tutorial_webmap_extent_ru.png

Нажмите Создать, чтобы завершить создание веб-карты.

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

../../_images/tutorial_webmap_display_ru.png

Или, если вы вернулись в группу ресурсов Москва, нажмите на значок с картой и лупой button_open_web_map справа от наименования ресурса веб-карты.

Откроется инерактивная веб-карта. У каждой карты есть собственная ссылка на просмотр и множество инструментов для управления данными.

../../_images/tutorial_webmap_displayed_ru.png

Панели, расположенные с левой стороны, позволяют управлять слоями карты, идентифицировать и редактировать объекты, а также поделиться картой и вывести её на печать. Подробную информацию об инструментах веб-карты и панелях вы найдёте в документации: https://docs.nextgis.ru/docs_ngweb/source/webmaps_client.html

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

Дальше вы можете:

Добавление внешнего слоя WMS на веб-карту

В NextGIS Web можно подключать внешние данные через протоколы WMS, WFS, TMS и PostGIS. Например, добавим спутниковый снимок из публичного сервиса WMS.

Вернитесь в группу Москва и создайте новый ресурс: Соединение WMS.

../../_images/tutorial_select_wms_con_ru.png

На вкладке «Ресурс» введите наименование: Спутниковый снимок - сервис.

../../_images/tutorial_wms_con_name_ru.png

На вкладке «WMS соединение» введите адрес: https://demo.nextgis.ru/api/resource/10551/wms?service=WMS&request=GetCapabilities

Затем нажмите кнопку Создать.

Вернитесь в группу Москва и создайте ресурс другого типа - Слой WMS.

../../_images/tutorial_select_wms_layer_ru.png

На вкладке «Ресурс» задайте имя - Спутниковый снимок - слой

../../_images/tutorial_wms_layer_name_ru.png

На вкладке Слой WMS нажмите на поле WMS соединение и выберите ресурс Спутниковый снимок - сервис, затем нажмите Выбрать отмеченное.

../../_images/tutorial_wms_layer_pick_con_ru.png

В выпадающем меню Формат изображения выберите image/png. В выпадающем меню Слои WMS выберите Moscow Sentinel-2.

../../_images/tutorial_wms_layer_settings_ru.png

Затем нажмите кнопку Создать. Итак, соединение и слой WMS созданы.

В разделе Внешний доступ вы найдёте автоматически сгенерированную ссылку, которую можно использовать для подключения данных в виде растровых тайлов. Вы сразу можете добавить эти данные в веб-приложение или настольную программу, например, NextGIS QGIS. Ваша Веб ГИС будет выступать в качестве прокси для WMS-сервиса.

../../_images/tutorial_wms_layer_result_ru.png

Чтобы добавить слой WMS на веб-карту вернитесь в группу Москва и нажмите иконку с карандашом карандаш рядом с веб-картой.

../../_images/tutorial_webmap_edit_select_ru.png

На вкладке Слои нажмите кнопку button_plus_layer Слой, выберите Спутниковый снимок - слой и нажмите кнопку Выбрать отмеченное. Слой WMS добавлен на веб-карту.

../../_images/tutorial_webmap_add_wms_ru.png

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

../../_images/tutorial_webmap_with_wms_ru.png

Добавление подложки на веб-карту

По умолчанию в веб-картах используется стандартная подложка OpenStreetMap. Но вы можете добавить другие подложки и использовать их в своих веб-картах.

Вернитесь в группу Москва и выберите тип создаваемого ресурса Подложка веб-карты.

../../_images/tutorial_select_basemap_ru.png

Здесь вы можете воспользоваться нашим открытым каталогом источников геоданных qms.nextgis.com. Начните вводить название подложки в поле Выбрать из QMS и выберите нужную из списка найденных в каталоге.

../../_images/tutorial_qms_pick_poistron_ru.png

Остальные поля будут заполнены автоматически. Внизу отобразится превью подложки.

Также подложку можно создать, вручную введя ссылку на тайлы в поле URL.

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

../../_images/tutorial_basemap_preview_ru.png

На вкладке Ресурс задайте имя для подложки.

../../_images/tutorial_basemap_name_ru.png

Нажмите кнопку Создать.

Чтобы добавить только что созданную подложку на веб-карту, вернитесь в группу Москва и нажмите иконку «Изменить» карандаш рядом с веб-картой.

../../_images/tutorial_webmap_edit_select_ru.png

На вкладке Подложки нажмите кнопку button_plus_layer Добавить и выберите созданный ресурс подложки. Затем нажмите Выбрать отмеченное и сохраните изменения.

../../_images/tutorial_webmap_add_basemap_ru.png

Откройте просмотр button_open_web_map веб-карты. Теперь на карте отображается новая подложка.

../../_images/tutorial_webmap_positron_ru.png

Создание пустого векторного слоя в Веб ГИС

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

Вернитесь в группу Москва и создайте новый ресурс Векторный слой.

../../_images/tutorial_select_vlayer_ru.png

На вкладке «Векторный слой» откройте выпадающее меню и выберите Создать пустой слой.

../../_images/tutorial_create_empty_layer_ru.png

Интерфейс вкладки изменится. Выберите в качестве типа геометрии Точка.

../../_images/tutorial_empty_layer_geom_ru.png

На вкладке Ресурс задайте имя для нового слоя, например Велопарковки, и нажмите кнопку Создать.

../../_images/tutorial_empty_layer_name_ru.png

Когда слой будет создан, отроется его страница. Теперь нужно добавить атрибуты. Нажмите карандаш Изменить в меню справа.

../../_images/tutorial_empty_layer_result_ru.png

Перейдите на вкладку Поля и нажмите кнопку button_plus_layer Добавить.

Кликните на созданное поле и настройте его свойства в панели справа:

  • Наименование: Количество парковочных мест,

  • Ключ: parking_spaces,

  • Тип: INTEGER.

../../_images/tutorial_add_field_ru.png

Нажмите кнопку Сохранить.

Теперь нужно добавить к новому слою стиль. На странице ресурса векторного слоя нажмите Создать ресурс и выберите Векторный стиль QGIS.

На вкладке Стиль QGIS откройте выпадающее меню и выберите Пользовательский стиль.

../../_images/tutorial_style_custom_select_ru.png

Здесь доступен конструктор простых стилей. Мы рекомендуем создавать стили в QGIS, но для быстрого добавления встроенный конструктор может быть полезен. Настойте в конструкторе значок в виде синего кружка с белой обводкой, размер - 12, толщина обводки - 1. Затем нажмите кнопку Создать.

../../_images/tutorial_style_custom_set_ru.png

В Веб ГИС создан новый векторный слой.

Теперь его можно добавить на веб-карту и опубликовать через сервис OGC.

Но сначала добавим на новый слой несколько объектов, используя веб-интерфейс.

Редактирование векторного слоя на веб-карте, добавление вложений

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

../../_images/tutorial_webmap_edit_select_ru.png

Сначала откройте владку Слои, нажмите button_plus_layer Слой и добавьте Велопарковки, кликнув по иконке button_pick_first Первый подходящий дочерний ресурс справа от имени слоя. Нажмите Выбрать отмеченные, затем перетащите слой Велопарковки на самый верх списка слоёв.

../../_images/tutorial_webmap_add_empty_ru.png

Далее перейдите на вкладку Настройки, найдите выпадающее меню Редактирование слоёв и выберите Включить. Сохраните изменения.

../../_images/tutorial_webmap_enable_editing_ru.png

Теперь на карту добавлен новый векторный слой и включена возможность редактирования слоёв. Откройте button_open_web_map веб-карту в режиме просмотра.

../../_images/tutorial_webmap_display_ru.png

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

../../_images/tutorial_layer_start_edit_ru.png

На карте появятся новые инструменты.

Выберите инструмент добавления + и кликните по нужному месте на карте.

../../_images/tutorial_add_point_ru.png

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

../../_images/tutorial_add_point_attr_ru.png

Также доступно две дополнительных вкладки. На вкладке Описание можно добавить форматируемый текст и изображения. На вкладке Вложения можно прикрепить к объекту любое количество фотографий или других файлов. Перейдите на вкладку «Вложения», нажмите button_upload Загрузить и выберите файлы bike_parking.jpg и rules.pdf из папки с примером.

../../_images/tutorial_add_attachments_ru.png

Нажмите кнопку ОК, чтобы сохранить объект.

Теперь снова перейдите в контекстное меню слоя Велопарковки и нажмите Завершить редактирование.

../../_images/tutorial_stop_edit_ru.png

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

../../_images/tutorial_edit_confirm_ru.png

Новый объект создан.

Кликните по синему кружку, отмечающему точку на карте. Появится панель идентификации, на которой показаны атрибуты объекта, его описание (если есть) и вложения.

../../_images/tutorial_feature_identify_ru.png

Кликните по прикрепленной фотографии или панораме, чтобы посмотреть их.

Теперь в слое есть данные, и можно опубликовать их с помощью сервиса OGC API Features.

Публикация сервиса OGC API — Features

Опубликуем слой с помощью протокола OGC API — Features, чтобы его можно было редактировать в сторонних приложениях. Вернитесь в группу Москва, нажмите Создать ресурс и выберите тип Сервис OGC API Features.

../../_images/tutorial_select_ogcapif_ru.png

Всё, что нужно сделать для создания сервиса - выбрать слой.

На вкладке Сервис OGC API Features нажмите button_plus_layer Слой и выберите слой Велопарковки*, затем нажмите **Выбрать отмеченное.

../../_images/tutorial_ogcapif_select_layer_ru.png

По умолчанию ресурс будет называться просто «Сервис OGC API Features». Чтобы задать другое название, перейдите на вкладку Ресурс и введите Велопарковки - сервис. Затем нажмите кнопку Создать.

Примечание

Название «Велопарковки» уже используется - это название векторного слоя, поэтому нужно добавить слово «сервис» в конце.

../../_images/tutorial_ogcapif_name_ru.png

Будет создан сервис и откроется его страница. В разделе Внешний доступ вы увидите эндпойнт опубликованного сервиса. Скопируйте адрес ссылки, чтобы использовать её в сторонних приложениях.

../../_images/tutorial_ogcapif_result_ru.png