Можно ли создать буфер вокруг соседних полигонов, чтобы новые полигоны не перекрывались?
Желательно в QGIS, но подойдет любой другой инструмент.
Поэтому вместо первого результата я бы хотел получить что-то похожее на второй:
Можно ли создать буфер вокруг соседних полигонов, чтобы новые полигоны не перекрывались?
Желательно в QGIS, но подойдет любой другой инструмент.
Поэтому вместо первого результата я бы хотел получить что-то похожее на второй:
Ответы:
Один из способов сделать это, в зависимости от качества / сложности слоя многоугольника, состоит в следующем:
1) Извлечь вершины из полигонов, убедившись, что уникальное поле сохраняется как атрибут
2) Создать вороной из этих точек
3) Буфер оригинальных полигонов на необходимое количество
4) Вычтите буферные полигоны из вороной
5) Рекомбинируйте / растворяйте оставшиеся вороные многоугольники в поле уникального атрибута.
Делая это в прошлом с немного противоречивыми наборами данных, мне пришлось сделать дополнительные шаги для удаления артефактов из новых полигонов:
Преимущество этапа voronoi (как также предлагает csd) состоит в том, что он дает перпендикулярные границы, как показано на диаграмме ваших требований.
Некоторые из этих операций могут занять значительное время, хотя ....
Если у вас есть учетная запись ArcGIS, вы можете легко выполнить этот процесс через ArcGIS Online. При создании веб-карты через Arc GIS Online вы можете использовать ограниченное количество инструментов анализа. Инструмент анализа буфера дает вам возможность перекрывать или растворять буферы. Оттуда вы можете экспортировать этот слой как шейп-файл.
Для QGIS вы сначала захотите использовать инструмент Create Buffers и введите желаемый радиус и единицу радиуса. Затем вы перейдете к своим инструментам геообработки и будете использовать инструмент Dissolve. Это разрушит границы ваших буферов и в основном создаст нечто, похожее на один большой буфер.
если использование растрового анализа является опцией, алгоритмы стоимостного расстояния могут быть правильным способом. как правило, эти алгоритмы обеспечивают расстояние и вывод-распределение, а также - на основе результата распределения (т. е. какой пиксель находится ближе всего к какому объекту) расчета растра, который выбирает любой пиксель из растра распределения с расстоянием <значение (из растра расстояния) обеспечит ожидаемый результат.