Объединить смежные полигоны с помощью ArcGIS Desktop?

12

Я хочу использовать ArcGIS Desktop для объединения смежных полигонов друг с другом.

Между полигонами нет общего поля, и поэтому инструмент Растворение не является идеальным решением. Полигоны, которые я хочу объединить, либо соседние, либо находятся на определенном расстоянии друг от друга.

Я хочу избежать использования ArcObjects. Тем не менее, скрипты Python приветствуются.


Инструмент Dissolve объединяет смежные полигоны, когда атрибут, для которого нужно растворить, не указан (и создание multipart отключено). Тем не менее, он не имеет настроек для пространственного допуска. Кроме того, распад не работает на многоугольниках, имеющих общую вершину.


Я попробовал подход с помощью инструмента интеграции, как упомянуто в одном из ответов. Проблема в том, что форма конечного объекта, который создается путем объединения нескольких объектов, не похожа на форму, которая была бы сформирована, если бы границы между объектами были распущены.

DotPi
источник
Я бы исследовал этот подход: (1) Буферные полигоны. Буфер касания или около полигонов будет перекрываться. (2) Используйте объединение или инструмент пересечения. Перекрывающиеся части буферов будут иметь атрибуты всех исходных полигонов. Это означает: таблица результатов показывает отношения ваших полигонов. (3) Отрегулируйте таблицу с шага 2 с помощью Excel и присоедините ее обратно к вашим полигонам. (4) Растворите свои полигоны по атрибутам.
Дженс

Ответы:

11

Я хотел бы пойти на инструмент Интегрировать , который находит функции, которые находятся в пределах заданного допуска x, y. После этого используйте инструмент Dissolve, который должен хорошо работать на соседних полигонах.

Алекс Терешенков
источник
5

Агрегатный полигон инструмент, вероятно, то, что вы хотите? Он может объединять полигоны в пределах одного слоя на основе определенного допуска на расстояние. Вы также можете установить минимальный размер полигонов и отверстий для сохранения.

Кристофер Вессон
источник
3

Одним из решений, которое мне удалось найти, было использование инструмента Dissolve, а затем использование Multipart to Singlepart. Это сначала растворило все многоугольники в один многоугольник, но растворило соседние шейп-файлы. Затем, используя Multipart to Singlepart, это создало шейп-файл, где каждый объединенный многоугольник был задан одним объектом в таблице атрибутов.

Андрей
источник