Buffer de polígonos vizinhos sem sobreposição usando QGIS

19

É possível criar um buffer em torno dos polígonos vizinhos, para que os novos polígonos não se sobreponham?

De preferência no QGIS, mas qualquer outra ferramenta serve.

Então, ao invés do primeiro resultado, eu gostaria de obter algo semelhante ao segundo:

insira a descrição da imagem aqui

user3170702
fonte
1
Se você não deseja que seu buffer se sobreponha, você pode dissolver os polígonos do buffer. No entanto, isso não refletirá sua segunda imagem.
Joseph
1
Eu tenderia a algum tipo de solução raster, semelhante a esta resposta .
alphabetasoup
Eu não conheço uma ferramenta QGIS que possa fazer isso, mas, em teoria, você pode calcular os buffers (possivelmente se cruzando) normalmente e também calcular o diagrama Voronoi (generalizado) de seus polígonos e, em seguida, cruzar cada polígono bufferizado com os Voronoi célula contendo esse polígono. A biblioteca Boost C ++ possui algumas ferramentas Voronoi que podem funcionar, mas seria muito código de cola C ++ para escrever.
csd

Respostas:

2

Uma maneira de fazer isso, dependendo da qualidade / complexidade da camada de polígono, é com as seguintes etapas:

1) Extrair vértices dos polígonos, garantindo que um campo exclusivo seja mantido como um atributo

2) Crie um voronoi a partir desses pontos

3) Buffer os polígonos originais pela quantidade necessária

4) Subtraia os polígonos tampão dos voronoi

5) Recombine / dissolva os polígonos de voronoi restantes no campo de atributo exclusivo

Ao fazer isso no passado com conjuntos de dados ligeiramente inconsistentes, tive que fazer etapas adicionais para remover artefatos de dentro dos novos polígonos:

  • Subtrair polígonos originais da nova camada para remover artefatos dentro do polígono
  • Adicionar polígonos originais ao novo conjunto de dados
  • Recombinar / dissolver novamente no campo-chave

A vantagem do passo voronoi (como também sugerido pelo csd) é que ele fornece limites perpendiculares, como o diagrama de requisitos mostrou.

Algumas dessas operações podem levar uma quantidade significativa de tempo ...

richardaeiou
fonte
1

Se você puder ter uma conta no ArcGIS, poderá executar esse processo facilmente através do ArcGIS Online. Ao criar um mapa da web através do Arc GIS Online, você pode usar uma quantidade limitada de ferramentas de análise. A ferramenta de análise de buffer oferece opções para sobrepor ou dissolver os buffers. A partir daí, você pode exportar essa camada como um shapefile.

Para o QGIS, primeiro você desejará usar a ferramenta Criar buffers e inserir o raio e a unidade de raio que desejar. Em seguida, você acessará suas ferramentas de geoprocessamento e usará a ferramenta Dissolver. Isso dissolverá os limites de seus buffers e basicamente criará algo que se parece com um buffer grande.

O G de SIG
fonte
2
A solução QGIS não resulta na segunda imagem! O meu entendimento é que os dois polígonos laranja terá os atributos dos dois polígonos verdes e não se dissolvem em um grande polígono
RutgerH
0

se o uso da análise de varredura for uma opção, os algoritmos de distância de custo podem ser uma maneira adequada. Geralmente, esses algoritmos também fornecem distância e alocação-saída - com base no resultado da alocação (ou seja, qual pixel está mais próximo de qual objeto) um cálculo raster que seleciona qualquer pixel de alocação-raster com um valor de distância <(da distância raster) forneceria o resultado esperado.

Robert Tuw
fonte