Страница 1 из 1

Топологическая модель покрытия open source

Добавлено: 28 июн 2011, 09:49
Филиппов Владислав
Доброго всем дня!
Есть ли в природе open source библиотека для работы с топологической моделью покрытия aka ESRI Coverage?
Не обязательна поддержка именно ESRI-покрытия, главное суть.

Re: Топологическая модель покрытия open source

Добавлено: 28 июн 2011, 15:42
KolesovDmitry
nukevlad писал(а): Есть ли в природе open source библиотека для работы с топологической моделью покрытия aka ESRI Coverage?
Плохо представляю себе, как устроено ESRI Coverage, но топологическая модель векторных данных используется в GRASS GIS (см. здесь, раздел про топологию).

Re: Топологическая модель покрытия open source

Добавлено: 28 июн 2011, 23:58
Александр Мурый
Не то чтобы все библиотеки, но всё-таки открытые ГИС+топология: Вот ещё весёлая презенташка по теме:
foss_gis_topology.pdf
(1.5 МБ) 590 скачиваний

Re: Топологическая модель покрытия open source

Добавлено: 29 июн 2011, 05:28
Филиппов Владислав
Благодарствую!
Да, я немного ошибся, ArcInfo Coverage, а не ESRI Coverage.
Про спагетти понравилось :D
Топология это не то.
Я не о контроле данных (уже посмотрел плагин к gvSIG), а о модели данных. Модель покрытия предполагает: что узлы и дуги(рёбра) для различных регионов являются общими. Запрещены самопересечения и в случае регионов входление одного в другой.....Там присутствует контроль целостности.


Как я понимаю Node-Edge-Face это тоже что и Node-Arc-Region?
Тогда только GRASS и PostGIS. А PostGIS это для БД. Тогда только GRASS.
Изучаю.....
Ещё раз спасибо комрады!

Re: Топологическая модель покрытия open source

Добавлено: 05 июл 2011, 16:08
Филиппов Владислав
Пока не нашёл в GRASS покрытие.... топологические правила для проверки есть, а покрытия нет.

Re: Топологическая модель покрытия open source

Добавлено: 05 июл 2011, 16:55
Александр Мурый
nukevlad писал(а):Пока не нашёл в GRASS покрытие.... топологические правила для проверки есть, а покрытия нет.
"Покрытие" == граница (boundary) + центроид (centroid)
Точнее, не "покрытие", а полигон (area)

Re: Топологическая модель покрытия open source

Добавлено: 05 июл 2011, 17:40
Филиппов Владислав
"Покрытие" == граница (boundary) + центроид (centroid)
щито?

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

Дуга опирается на 2 узла. Дуги не могут пересекаться. Могут жить сами по себе (не быть частью региона). Имеют ссылки (при наличии) на левый и правый регионы, часть которых являются.

Регионы - мультиполигоны состоящие из набора 3-х или более дуг.

Вот - http://webhelp.esri.com/arcgisdesktop/9 ... a_coverage

Простой пример: в жизни есть 2 смежных земельных участка, каждый из которых состоит из 4 точек. 2 точки каждого участка совпадают, т.е. находятся в одних и тех же координатах. Соответственно, часть границы каждого участка между этими точками одинакова.

Если это нарисовать в полигональном shape-слое, то будем иметь 2 полигона, каждый состоящий из 4-х вершин, итого 8 вершин.

Если используем покрытие - имеем 2 региона, 6 узлов (8 - 2 общих) и 7 (8 - 1 общая) дуг.

Возможно мы говорим о разных вещах?
Я смотрел про GRASS через wx-GUI. Всё что нашёл - топологическая проверка: укажите слой, установите правила и я укажу на проблемы.

а вот это интересно - тыц

Re: Топологическая модель покрытия open source

Добавлено: 05 июл 2011, 20:00
Александр Мурый
Почитайте здесь и эту страничку и посмотрите картинки, поищите в инете по словам "GRASS vector data model", а потом найдите семь отличий от "покрытий".
Я объяснял касательно GRASS, арков никаких не трогал.

Re: Топологическая модель покрытия open source

Добавлено: 05 июл 2011, 21:11
Mavka
nukevlad
Может быть дело в различной терминологии, но топология в GRASS полноценная, нативная. Все так как вы расписываете с 2-мя земельными участками.

Re: Топологическая модель покрытия open source

Добавлено: 06 июл 2011, 05:31
Филиппов Владислав
to amuriy
судя по второй ссылке, всё как я и описываю.
По стандарту GML, то же всё выглядит отлично, есть Node-Edge-Face.
Не только у ESRI подобная модель данных имеется.
Значит стоит дальше копать!

Re: Топологическая модель покрытия open source

Добавлено: 06 июл 2011, 10:43
Александр Мурый
nukevlad писал(а): По стандарту GML, то же всё выглядит отлично, есть Node-Edge-Face.
Это хорошо, но как его можно править? Подозреваю, что только в текстовом/XML редакторе.
Поискал --- GML 3 еще вроде бы не поддерживается нормально ни в одной свободной (да и несвободной) ГИС. В GDAL частично в GML-драйвере.

Re: Топологическая модель покрытия open source

Добавлено: 07 июл 2011, 04:49
Филиппов Владислав
Реализовано вот где PostGIS
Returns the GML representation of a topogeometry in version GML3 format.
PostgreSQL + PostGIS как то понятнее :) , уж больно "специфичен" для меня GRASS.

А для правки нужен свой DOM-парсер. Задача не из лёгких, но решаема для малого круга объектов.