Организация синхронизации пространственного описания объекта в БД и его метрики на карте

Печать Предыдущая страница Стартовая страница Следующая страница

Спецификация OpenGIS определяет два стандартных способа определения пространственных объектов: в форме Well-Known Text (WKT) и в форме Well-Known Binary (WKB). WKT и WKB включают информацию о типе объекта и координаты, составляющие объект.

Кроме этого, спецификация OpenGIS требует, чтобы внутренний формат хранения пространственных объектов включал идентификатор системы координат (spatial referencing system identifier - SRID). SRID необходим для добавления объекта в базу данных.

Наиболее быстрым с точки зрения обработки программными средствами является определение пространственных объектов в формате WKB. Именно этот формат и применяется для организации взаимного обмена данными между БД и векторной картой. Ввиду этого далее будет рассматриваться только WKB.

WKB-представление является описанием геометрического объекта в виде набора байт определенного формата. Такой набор состоит заголовочной части и массивов байт, определяющих координаты контуров объекта.

Последовательность байт может быть представлена с использованием одной из двух стандартных бинарных кодировок. Разница между двумя кодировками геометрии заключается в том, что последовательность байтов кодируется обратным порядком байтов (Big Endian) в XDR и прямым порядком байтов (Little Endian) в NDR.

Для уменьшения вычислительных затрат в программе используется WKB с прямым порядком байтов – NDR.

 

Двоичное представление геометрического объекта (WKB):

_bm4515

 

В программе реализована поддержка геометрии 2-х (2D), 3-х (Z и M) и 4-х (ZM) мерной метрики для следующих локализаций объектов, приведенных в таблице ниже.

 

Типы геометрии БД, поддерживаемые программой:

Тип геометрии

Коды размерности метрики в представлении WKB

Пример

2D

Z

M

ZM

Point

0001

1001

2001

3001

LineString

0002

1002

2002

3002

Polygon

0003

1003

2003

3003

Простой

С подобъектом

MultiPoint

0004

1004

2004

3004

MultiLineString

0005

1005

2005

3005

MultiPolygon

0006

1006

2006

3006

Простые

С подобъектами

 

При этом для векторных картах формата ГИС «Панорама» из вышеперечисленных типов геометрии можно сопоставить только следующие локализации объектов (см. таблицу ниже).

 

Характер локализации объекта электронной векторной карты формата ГИС «Панорама», соответствующие типам геометрии БД:

Тип геометрии БД

Внешний вид

Локализация объекта карты

Point

Точечный объект

LineString

Линейный объект

Polygon

Простой

С подобъектом

Полигон

(в т.ч. с полигон подобъектами)

 

Поддержка мульти-геометрии на стороне векторной карты достигается за счет наборов объектов. Каждому простому типу геометрии, входящему в состав мульти-геометрии, на карте создается объект, соответствующей локализации. Таким образом, объекту базы данных, имеющему тип мульти-геометрии, на карте будет соответствовать не один, а сразу несколько объектов. Такие объекты на карте объединяются в наборы, что позволяет впоследствии по одному отдельно взятому объекту выбрать на карте весь набор, то есть все составляющие мульти-геометрии. Поддержка наборов объектов реализована на уровне ГИС-ядра «Панорама».

 

Характер локализации объектов в наборах электронной векторной карты формата ГИС «Панорама», соответствующие типам мульти-геометрии БД:

Тип геометрии БД

Внешний вид

Локализация объекта карты

MultiPoint

Набор точечных объектов

MultiLineString

Набор линейных объектов

MultiPolygon

Простые

С подобъектами

Набор объектов, состоящий из полигонов

(в т.ч. с полигонов подобъектами)