Пространственная информация, и ее свойства (часть II)
Рассмотрим данные, содержащиеся на обычной топографической карте. Топографическая карта представляет из себя единство двух различных видов представления информации. С одной стороны это - чертеж на котором имеются геометрические объекты различного характера локализации. Эти объекты описываются при помощи пространственных координат. С другой стороны - карта это представление пространственного распределения различных параметров или описательных данных, характеризующих территорию или отдельные ее части, которые сами по себе описываются без привлечения пространственных координат. Первый тип информации называют метрической информацией, а второй тип семантической (описательной, атрибутивной, смысловой).
Виды пространственно-распределенной информации можно разделить на три большие группы: семантическую, метрическую и топологическую.
Источником семантической информации является способность человека распознавать (выделять) некоторые части пространства и предметы в нем находящиеся и связывать с этими частями различные определения или характеристики. Такую информацию удобно хранить в реляционной базе данных. При этом ключом может служить например название объекта, или его номер. Несколько примеров такого рода было рассмотрено в первой части статьи.
Источником метрической информации является способность человека отличать друг от друга различные части пространства, и осуществлять измерения расстояний, площадей, объемов. Метрическая информация, таким образом, отражает свойство предметов располагаться в определенной части пространства и занимать некоторую его часть.
Топологическая информация отражает топологические свойства пространства, то есть такие свойства, которые не изменяются при любых линейных деформациях пространства производимых без разрывов и склеиваний. К топологической информации относятся: точки пересечений объектов, информация о примыканиях объектов друг к другу (или общих границах). Простейшими топологическими свойствами являются характеристики относительного положения объектов друг относительно друга, например: «слева», «справа». Каким бы образом мы мысленно не «растягивали» или «сжимали» пространство, характеристика относительного положения объектов друг относительно друга не изменится.
Ответим на вопрос: можно ли сущности, упомянутые в предыдущей главе, такие как: дом, магазин, улица считать пространственными объектами? Ответ очевиден: да. Каждый из этих объектов занимает определенное, только «свое» пространственное положение. Различное пространственное расположение тем самым служит для индивидуализации объектов, их отличия одного от другого.
Ответим на другой вопрос: а можно ли отношения ДОМ и МАГАЗИНЫ, считать пространственной информацией? Эти отношения не что иное, как информационное представление реальных пространственно-локализованных сущностей, объектов. Ответ таков: нет. Отношения в том виде, как мы их сформулировали в предыдущей части статьи не позволят различать объекты, основываясь на их пространственном расположении, поскольку в атрибутах объектов нет сведений об этом.
Итак, для того, чтобы информационное представление объектов можно было назвать «пространственным», к нему как минимум, необходимо добавить атрибут, однозначно описывающий область пространства, в которой локализован, расположен объект. Добавление такого атрибута к обычной базе данных превращает ее в геоинформационную систему.
Задать такие атрибуты можно двумя путями: указать абсолютное расположение объекта через его координаты (координаты его границы), или указать относительное расположение объекта относительно другого объекта.
В соответствии с этим мы можем определить две модели хранения пространственной информации: векторная (абсолютное расположение) и растровая (относительное расположение).
Растровая модель и растровые ГИС
На заре развития геоинформационных систем наибольше развитие получили растровые ГИС в силу того, что с использованием маломощных компьютеров удобно выполнять обработку пространственной информации именно в растровом виде.
Растровые ГИС получили свое название оттого, что данные в них хранятся в виде таблиц – сеток с ячейками, напоминающих по своей внутренней организации растровые файлы без сжатия форматов BMP, BIL и других.
С точки зрения растровой модели пространственные объекты можно представить как совокупность атрибутов. Например, совокупность атрибутов «болото» и «лес» порождают объект «лес по болоту», компактная и протяженная область рельефа – «овраг», совокупность атрибутов «номер», «улица», «цвет» порождают объект «дом» и так далее. Хранение атрибутов организуется в виде матрицы, каждая клетка которой сопоставляется с прямоугольной областью пространства. Это похоже на координатную сетку, которая расчерчивает картографируемую территорию на одинаковые прямоугольники. В каждой клетке записывается значения атрибута, например: высота деревьев, глубина реки. В простейшем случае, как показано на рисунке 1, в клетке просто записывается признак наличия или отсутствия объекта.

Рисунок 1. Хранение данных в растровой модели
Каждый прямоугольник имеет свой собственный уникальный номер, состоящий из позиции в столбце (I) и строке матрицы (J), задающий его положение относительно смежных ячеек. Из рисунка 2 можно видеть, что, зная координаты самой первой ячейки, пользуясь номерами I, J мы легко можем перейти к координатам любой ячейки:
X(I) = X(0) + I*N, Y(J) = Y(0) + J*M, где M, N – размер ячейки в принятой системе координат.

Рисунок 2. Координаты ячеек в «сетке» растровой модели.
Если мы желаем иметь в нашей базе данных более одного атрибута, мы должны создать новую матрицу, в которой пространственное положение ячеек будет такое же как в исходной матрице.
Можно видеть, что при такой организации информации, понятие пространственного объекта остается завуалированным. Информация об отдельном пространственном объекте в такой базе данных нигде не хранится, соответственно в ней нет и топологической информации. Неделимой «единицей» пространственной информации в данном случае является ячейка матрицы.
На первый взгляд может показаться, что это неудобно, однако не следует спешить с выводами. Существует множество задач, решать которые эффективно позволяет именно такой подход.
Растровые модели данных применяются в тех случаях, когда нам необходимо сохранить сведения об атрибутах некоего протяженного пространственного объекта, объекта, не имеющего границ, либо в том случае, когда информация о границах объекта не имеет значения для решения поставленной задачи. К таким объектам относятся, например: атмосферный воздух (атрибут – загрязненность), лес (атрибут – запас древесины), поверхность моря (атрибут - загрязненность). В рамках растровой модели можно легко сравнивать различные части объектов между собой, обособлять части объектов, и образовывать на их основе новые объекты. Это делается при помощи специфических операторов, предназначенных для работы с пространственными данными. О них речь пойдет далее.
Векторная модель и векторные ГИС
Векторная модель данных предназначена для хранения информации о пространственных объектах, границы которых описываются посредством координат. Граница пространственного объекта формируется посредством геодезических, либо картометрических измерений путем аппроксимации контура объекта, и «превращается» в последовательность координат, поворотных точек участков границы. В общем случае, объект может иметь как внешнюю так и внутреннюю границу. Пример: водная поверхность озера будет иметь две и более границ, если посреди озера расположены острова.

Рисунок 3. Представление контура объекта в векторной модели.
Контур, либо набор контуров пространственного объекта есть неделимая единица хранения пространственной информации, с которой связаны атрибуты объекта. В векторной модели в качестве единого и неделимого объекта может быть представлен только тот пространственный объект, который характеризуется одинаковым набором атрибутов и значений атрибутов.
Пусть мы создаем контура объектов ДОМА. В этом случае, каждый дом должен быть представлен отдельным контуром. Мы не сможем обрисовать два различных дома одним и тем же контуром, поскольку, в этом случае произойдет потеря адресной информации. Одному и тому же объекту невозможно присовоить более одного значения одноименного атрибута (в данному случае – два адреса). Так же мы не можем выделить часть объекта, и присвоить ему другие атрибуты, сохранив при этом «связь» с исходным объектом. Для этого мы должны оформить эту часть как самостоятельный объект.
Рассмотрим еще один пример. Пусть мы имеем сущность УЛИЦА(НАЗВАНИЕ) и атрибуты будем хранить в реляционной базе данных. Мы не сможем создать в нашей векторной геоинформационной системе единый объект «Картографический проспект+Геодезический проспект», поскольку значение атрибута НАЗВАНИЕ у каждой улицы различны. Поэтому каждую из улиц придется «оформить» как самостоятельный объект (см. рисунок 4).

Рисунок 4. Правила формирования пространственных объектов в векторной модели.
В векторной модели граница является точно таким же атрибутом объекта УЛИЦА, как, скажем ее название; этот особенный, «метрический» атрибут характеризует пространственное положение объекта, и, с точки зрения реляционной модели, ничем не отличается от других атрибутов (см рисунок 5). Отметим, что точное совпадение границ объектов вовсе не означает полную идентичность объектов, для этого необходимо, чтобы все атрибуты объекта были одинаковы – как метрические так и семантические.
Модель данных, в которой к обычным атрибутам добавляется пространственная информация, отображаемая в виде особого поля, носит название геореляционной модели данных. Существуют специальные операторы, которые позволяют осуществлять различные действия с пространственной информацией, такие как объединение, вычитание, построение буфера и другие. Эти операторы мы будем рассматривать позже.

Рисунок 5. Геореляционная модель данных.
Для удобства манипулирования пространственными объектами в геореляционной модели принято разделять объекты на три типа по характеру локализации на площадные, линейные и точечные.
Объекты, которые имеют столь малые размеры, что в масштабе карты отображаются точкой, будут иметь точечную локализацию; для отображения пространственной информации в этом случае достаточно одной пары координат X, Y. Примерами точечных объектов являются колодцы, трубы, вершины гор и т.п. Линейными объектами являются такие объекты как: дороги, реки и другие протяженные образования, ширина которых не отображается в масштабе карты, а их длина многократно превышает ширину. Площадными объектами будут объекты местности для которых и длина и ширина может быть показана на карте с соблюдением масштаба: озера, крупные реки, контуры населенных пунктов и т.п.
Выбор характера локализации для тех или иных объектов при создании ГИС зависит от решаемых ею задач. При создании ГИС, в которых содержатся разномасштабные картографические материалы выбор характера локализации часто представляет большую проблему: на мелкомасштабных картах река может отображаться линейным объектом, на крупномасшабных же картах для отображения реки уже может потребоваться площадной объект.
Особенности хранения топологической информации
Зачем нужна топологическая информация? Все дело в том, что любые измерения координат объектов, или выполненные геодезическими методами, или картометрически всегда имеют определенную точность. Знание точности определения координат является совершенно необходимым для практической работы с цифровыми картами и геоинформационными системами, в противном случае не избежать серьезных ошибок.
Рассмотрим пример. Пусть мы имеем карту рек (отображенных линиями) и населенных пунктов (отображенных точками) и желаем при помощи ГИС ответить на вопрос: с какой стороны реки находится населенный пункт? На рисунке 6 показана ситуация, когда невысокая точность карты может изменить правильный ответ на этот вопрос на противоположный.

Рисунок 6. Искажение взаимного пространственного расположения объектов из-за невысокой точности карты.
При создании цифровых карт необходимо внимательно следить за соблюдением топологических отношений между объектами: расположение справа-слева, сверху-снизу и т.п.; примыкание одного объекта к другому; расположение внутри-снаружи и др.
Фирмой ESRI (США), разработана специальная модель данных, которая позволяет избегать ошибок в топологических отношениях между объектами. Эта модель получила название цепочно-узловой, и она основана на использовании реляционной модели данных.
В рамках цепочно-узловой модели пространственные данные об объектах представляются двумя примитивами: линейными и точечными. Линейные примитивы используются для отображения границ линейных и площадных объектов, точечные примитивы служат для отображения точечных объектов и внутренних областей площадных объектов. Так же используются специальные примитивы – узлы, которые указывают точки примыканий границ друг к другу.
Информация об объектах хранится в 2-х служебных реляционных таблицах AAT (Arc Attribute Table – таблица атрибутов дуг) и PAT (Point Attribute Table – таблица атрибутов точек).

Рисунок 7. Сочетание элементов цепочно-узловой модели и структуры таблиц AAT и PAT.
Цепочно-узловая модель позволяет легко контролировать соблюдение топологических отношений связанных с примыканиями объектов и расположением площадных и линейных объектов друг относительно друга.
***
В следующих частях статьи мы рассмотрим подробнее реализацию растровой и векторной моделей данных, приведем специальные операторы для работы с пространственными данными, рассмотрим язык запросов SQL и его расширение для работы с данными геоинформационных систем.