Описание
ГИС (географическая информационная система) - это система сбора, хранения, анализа, графической визуализации пространственных данных и связанной с ними атрибутивной информацией о географических объектах.
Flexberry GIS представляет собой функциональную подсистему платформы Flexberry, используемую для хранения, создания, редактирования, анализа и отображения географической информации. Основное предназначение подсистемы – это создание и настройка интерактивных карт на основе имеющихся пространственных данных, например о районах области, края и города, водных ресурсах, кварталах, улицах, зданиях, территориях предприятий, автомобильных дорогах, железнодорожных и трамвайных путях и т.д.
Возможности
Основная особенность ГИС-подсистемы заключается в возможности отображения на карте объектов данных, с которыми работает Flexberry ORM. Более того, через ГИС-подсистему можно осуществлять особые визуализации этих объектов:
- Количественный анализ;
- Анализ по категориям;
- Картодиаграммы;
- Пространственные интерполяции.
Благодаря специальным визуализациям размер и внешний вид объектов на карте могут динамически определяться в зависимости от типа визуализации и значений каких-либо прикладных атрибутивных свойств.
Функциональные возможности в части инструментов карты
Инструменты карты Flexberry GIS:
- позволяют визуализировать данные пространственных слоёв;
- позволяют управлять отображением слоёв карты;
- обеспечивают возможность навигации по слоям карты;
- позволяют осуществлять запросы к пространственным данным карты;
- позволяют подготавливать и выводить фрагменты карты на печать или выгружать в файл графического формата PNG, JPG , GIF, BMP, TIFF;
- позволяют производить поиск объектов карты, пересекающихся с выбранным объектом;
- реализуют возможность создания новых векторных объектов путём импорта векторных данных из файлов форматов Esri Shape, MapInfo Tab, Mid/Mif, KML, Geojson, GPX;
- реализуют возможность экспорта выбранных на карте объектов в файлы форматов Esri Shape, MapInfo Tab, Mid/Mif, KML, Geojson, GPX, CSV (сохранение в DXF не поддерживается);
- реализуют возможность импорта геопривязанных объектов в известных системах координат (добавляются через код) или проекциях растров в форматах TIFF, JPEG, PNG или GeoTIFF;
- обеспечивают отображение дерева слоёв карты;
- обеспечивают возможность включения/отключения видимости слоёв карты;
- обеспечивают возможность включения/отключения видимости группы слоёв карты;
- позволяют регулировать прозрачность отображения объектов слоя;
- обеспечивают отображение условных обозначений объектов слоя в дереве слоёв карты;
- позволяют добавлять слои на карту;
- позволяют создавать новые пользовательские источники данных (добавлять слои/таблицы в базу данных через веб-интерфейс);
- обеспечивают возможность визуального сравнения различных слоёв карты с помощью слайдера;
- позволяют масштабировать карту с использованием колёсика мыши;
- позволяют масштабировать карту с использованием инструментов пользовательского приближения и отдаления;
- позволяют масштабировать карту с использованием инструмента выбора или указания точного масштаба;
- позволяют перемещаться по карту с помощью инструмента «Рука»;
- позволяют переходить к предыдущей/следующей области отображения карты;
- позволяют переходить к области отображения карты «по умолчанию» в соответствии со значением, указанным в метаданных карты;
- реализуют возможность использования пространственных закладок карты;
- позволяют идентифицировать объекты пространственных слоёв карты в указанной точке;
- позволяют идентифицировать объекты пространственных слоёв карты с использованием прямоугольной области;
- позволяют идентифицировать объекты пространственных слоёв карты с использованием произвольного пользовательского многоугольника;
- позволяют идентифицировать объекты пространственных слоёв карты в настраиваемой буферной зоне («соседи»);
- позволяют получать координаты указанной точки карты;
- обеспечивают возможность перехода к точке с указанными координатами;
- позволяют измерять длины прямых и ломаных линий;
- позволяют измерять площадь полигона;
- позволяют измерять радиус окружности на карте;
- обеспечивают возможности сравнения площадей и геометрий (контуров) двух выбранных объектов в слое;
- обеспечивают возможность измерения расстояния между объектами в слое;
- позволяют производить поиск объектов в слоях карты по параметрам атрибутов слоя;
- позволяют отправлять фрагмент карты на печать;
- позволяют осуществлять выгрузку фрагмента карты в графический файл формата PNG;
- обеспечивают возможность ввода и изменения пространственных характеристик (границ) объектов карты инструментами рисования на карте, в том числе одноконтурных полигонов, многоконтурных полигонов, а также полигонов * «дыркой»;
- обеспечивают возможность ввода пространственных характеристик (границ) объектов путём задания румбов и длин линий;
- обеспечивают возможность ввода пространственных характеристик (границ) объектов посредством задания значений координат поворотных точек;
- обеспечивают возможность ввода пространственных характеристик (границ) объектов посредством объединения выбранных пространственных объектов одного слоя;
- обеспечивают возможность ввода пространственных характеристик (границ) объектов посредством вычитания геометрии одного выбранного пространственного объекта из геометрии другого;
- позволяют отображать загруженные спутниковые снимки на карте в виде отдельных слоёв (ограничения задаются только тех. параметрами сервера);
- позволяют формировать Timelapse Gif на основе имеющихся растровых слоёв.
Функциональные возможности в части API функций
Подсистема Flexberry GIS предоставляет API для доступа к функциям, которые:
- обеспечивают доступ к пространственным данным по протоколам WMS или WFS;
- позволяют осуществлять переход из реестровых данных к соответствующим объектам на карте;
- позволяют осуществлять переход со списка найденных объектов на карте или с карточки объекта на карте к соответствующим объектам или объекту в реестровых данных;
- позволяют получать площадь пространственного объекта;
- позволяют получать атрибуты пространственного объекта;
- позволяют получать ближайший объект и расстояние до него от выбранного объекта;
- реализуют возможность создания новых полигональных объектов по абсолютным координатам;
- реализуют возможность создания новых объектов (контуров) по румбам и длинам линий;
- обеспечивают предоставление данных о румбах и направлениях линий на основе существующих объектов (контуров);
- реализуют сквозную аутентификацию из внешней системы;
- обеспечивают возможность включения/отключения видимости всех объектов слоя;
- обеспечивают возможность включения/отключения видимости слоёв карты;
- обеспечивают возможность включения/отключения видимости подмножества объектов слоя;
- обеспечивают возможность включения/отключения видимости служебных панелей;
- позволяют формировать рисунок в формате PNG для объекта слоя с авто-центрированием и масштабированием для заданной комбинации отображаемых топоосновы, масштаба и перечня отображаемых слоёв;
- позволяют осуществлять поиск объектов карты, пересекающихся с выбранным объектом в слое (или с массивом слоёв);
- позволяют отображать участок пересечения объектов карты;
- обеспечивают возможность сравнения объектов слоёв карты для определения следующих характеристик:
- вхождение «объекта А» в «объект Б»;
- площадь «объекта Б», выходящая за границы «объекта А»;
- площадь пересечения объектов карты;
- перечень соседних объектов, даже если нет касания фигур.
- позволяют переводить карту в режим создания/редактирования объектов;
- позволяют создавать объекты путём их копирования, в том числе между различными слоями;
- позволяют создавать объекты путём перемещения между слоями;
- реализуют возможность редактирования полигона объекта;
- реализуют возможность добавления нового объекта на слой карты;
- позволяют удалять объекты слоя;
- позволяют добавлять новые слои на карту;
- обеспечивают возможность объединения слоёв карты в группы (уровень вложенности – для определённости 3).
Архитектура
Flexberry GIS состоит из следующих компонент:
- Геосервер (стороннее решение, которое может предоставлять данные карты по протоколу WFS-T или WMS)
- Метаданные карты в БД
- Серверные компоненты, предоставляющие доступ к метаданным карты в БД
- Клиентские компоненты, реализующие функциональность работы с картой
Как воспользоваться
Чтобы создавать приложения на основе Flexberry GIS можно выполнить проектирование и генерацию приложения в Flexberry Designer.
В данное приложение устанавливаются соответствующие NuGet-пакеты и Ember-аддоны, добавляются таблицы в БД. Настраиваются карты и слои, реализуются переходы на карту в соответствии с требованиями предметной области.
Материалы
Подробнее с Flexberry GIS можно познакомиться на сайте с документацией.
Внешний вид приложений, созданных с использованием Flexberry GIS
Компонент карты
Пример готового ГИС-приложения