Существуют ли настольные ГИС-альтернативы ArcGIS 10.X для топологии и векторного сопоставления?

11

Есть ли какие-либо варианты, кроме ArcGIS for Desktop, для топологических правил и автоматического обеспечения целостности топологии в настольной ГИС? Я ищу что-то, что автоматически привязывает объекты к некоторым границам базового слоя (устраняя пропуски и перекрытия в наборе данных).

Я знаю о функциях топологии PostGIS, но я хотел бы что-то в настольной ГИС.

QGIS 2 пытается реализовать топологические правила, но ничего не делает для автоматической очистки данных.

Является ли ArcGIS for Desktop от Esri единственным решением?

Ниже радара
источник
QGIS GRASS? Инструменты для автоматического чисты доступные youtube.com/watch?v=YvEPOfSzhO0
spatialhast
ian-ko.com/ET_GeoTools/UserGuide/etgt_UserGuide.htm Вы смотрели на инструменты ET? Я не думаю, что есть автоматизация для именно тех инструментов, которые вы ищете, но это может быть вариант для вас.
Clickinaway
Вы можете сохранить топологию "ткани" (без пропусков и перекрытий в слое), имитируя модель покрытия. У вас будет слой непересекающихся линий, которые будут «держать» фигуры, и слой точек, который будет содержать атрибуты. Затем вы бы использовали инструмент (в QGIS это инструмент линии к многоугольнику), чтобы построить полигоны и пространственное соединение тех, у кого есть точки, чтобы придать им атрибуты. В ArcGIS инструмент Feature to Polygon может использовать точки для добавления атрибутов без необходимости соединения. Когда вы закончите, вы редактируете линии и точки и строите полигоны.
Джонс
интересная идея! но как это можно применить, если у вас есть официальная таблица городов и таблица, состоящая из подразделений городов (соседей), и вы хотите, чтобы вторая точно соответствовала первой, где они имеют общие границы.
ниже радара
Вы можете удалить ненужные строки или их разделы, а затем скопировать и вставить нужные строки на их место. Вы также можете использовать инструмент трассировки, чтобы добавить участки линии, которые соответствуют другому, или изменить форму линии. Для отдельных вершин вы можете перемещать их с привязкой.
Джонс

Ответы:

9

«В прежние времена пользователи ГИС, особенно пользователи ArcInfo, хорошо разбирались в геопространственной топологии из-за охвата» ( Геопространственная топология, Основы )

Но ESRI - не единственное решение:

  • С этого момента (одновременно с ArcInfo) GRASS GIS также является полной топологической ГИС с правилами, которые отличаются от правил ESRI:
  • Топология в PostGIS намного новее с другими правилами

Модель данных GRASS GIS Topology (из вики GRASS и Полной плоской топологии в GRASS на итальянском языке).

В модели данных GRASS GIS определены различные топологические элементы:

  • узлы - 0D элементы:

     for each node is defined which lines/boundaries starts and ends in this node;
  • линии - 1D элементы, которые не могут образовывать области:

      for each line is defined a start and end node;
  • Границы - 1D элементы, которые могут образовывать области:

      for each boundary is defined a start and end node, and an area on the left and right
  • центр тяжести: точка, расположенная внутри области:

      for each centroid is defined an area 
  • области - 2D элементы, образованные замкнутым набором границ и, возможно, одним центроидом, расположенным внутри области:

      for each area is defined the list of boundaries which forms the area 
      (outer ring), and the list of isles located inside the area
  • остров - 2D элементы, образованные областями:

      for each isle is defined the list of boundaries which forms the isle (it's outer ring), 
      and optionally by the area where the isle is located. 

Модель топологии PostGIS :

Модель определяет только топологические элементы

  • узлы - 0D элементы

    Is defined by geometry (point) and by the face where the node is located (can be NULL) 
  • ребра - 1D элементы

    Is defined by geometry (linestring), start and end node, next left and right edge 
    (ie. connectivity) and by the face on the left and right. 
  • грани - 2D элементы

    Is defined by bounding box. 

Так:

  • когда вы импортируете шейп-файл или слой QGIS в GRASS GIS, они изменяются для соответствия топологическим правилам (слои GRASS, см. Векторная обработка данных в GRASS GIS , v.clean, v.build)
  • То же самое верно при оцифровке новых векторных карт

Вы можете использовать только GRASS GIS или GRASS GIS из QGIS с плагином grass или плагином Sextante, но будьте осторожны, даже если слой является топологически корректным в GRASS GIS, это не относится к результирующему слою в QGIS (без топологии )

ген
источник
1
Проблема, которую я видел с GRASS, заключается в том, что когда вы хотите, чтобы два слоя имели одинаковые границы, вы не можете определить базовый слой, к которому привязываются другие слои. Слои привязаны таким образом, что вы не можете знать, какой из них был изменен, возможно, все слои слегка изменены, чего вы не хотите в реальной жизни.
ниже радара
1
Это неправда, попытайтесь понять, что вы можете сделать с v.clean
ген
Я не понимаю вашу проблему: я использую GRASS GIS для оцифровки геологических карт (с определенной топологией) так же, как я использовал ArcInfo с течением времени. Более того, изучайте GRASS GIS, потому что она имеет многослойную векторную библиотеку ( векторную библиотеку ), и вы можете привязывать слои с помощью вершин и / или ребер (я делаю это).
ген
@ Возрождение старой темы. Не могли бы вы привести примеры того , как использовать Многослойные функцию для привязки границ полигонов к набору опорных вершин или опорной границе? Это не задокументировано в v.clean.snap doc
rha
1

Для векторного слияния вы можете использовать OpenJUMP ( http://openjump.org/ ) с плагином RoadMatcher ( http://sourceforge.net/projects/jump-pilot/files/OpenJUMP_plugins/More%20Plugins/Roadmatcher%201.4%20for) % 20OJ / ).

Смешение может быть сделано автоматически или вручную.

tqhien
источник
1
Да, я сейчас тестирую OpenJump и RoadMatcher, но я не знаю, как объединить слои многоугольников, кажется, это сделано только для полилиний
ниже радара