Dividir uma camada de polígono com uma camada de linha?

12

Estou desenhando regiões administrativas que têm limites seguem as ruas em outra camada. Como essas ruas são muito longas, com muitos vértices, não quero recontá-las. Estou procurando uma maneira de "dividir" o polígono como a ferramenta "dividir recursos" (aquela com o ícone de tesoura).

Antes: um polígono inteiro com uma linha passando por ele

insira a descrição da imagem aqui

Depois: a linha funciona como uma tesoura e divide o polígono em 2 partes (na figura abaixo, os polígonos foram afastados apenas para fins ilustrativos)

insira a descrição da imagem aqui

Cao Minh Tu
fonte

Respostas:

8

Primeiro você tem que unir as duas formas

insira a descrição da imagem aqui

Em seguida, ative o plug-in Polygonizer para remodelar as linhas para polígonos:

insira a descrição da imagem aqui

PieterB
fonte
Meu Ubuntu Qgis reclamou da falta de shapely.ops quando tentei instalar o plugin Polygonizer. No momento, não sei como consertar. Vou ter que resolver esse problema antes de tentar sua solução. Obrigado.
Cao Minh Tu
Funciona. O que demorei tanto para aceitar sua resposta é que eu não sabia como instalar o shapely.ops. É muito fácil: acesse o centro de software do Ubuntu, procure por "shapely" e instale o único pacote python-shapely. Depois disso, consegui instalar o plugin polygonizer e tentei sua solução. Muito obrigado!
Cao Minh Tu
1
Não consigo instalar o plugin Polygonizer.
Gregmacfarlane
4

Resolvi esse problema com a Processing Toolbox, usando o Polygon-line intersectionalgoritmo SAGA .

O processo pode falhar (ou seja, sem divisão) se o final da linha for encaixado em um ponto de vértice do polígono. Estender um pouco a linha no polígono vizinho ou na área externa sanitiza essas armadilhas.

AndreJ
fonte
1

Essa pergunta semelhante é para o ArcGIS, mas pode fornecer algumas idéias da discussão que você pode implementar no QGIS.

Também criei um modelo ArcGIS que você pode replicar usando conceitos semelhantes no QGIS. Tentei descrever os conceitos que usei aqui .

RyanKDalton
fonte
Obrigado pela sua resposta, mas agora o ArcGIS ou a habilidade de programação está fora da minha capacidade.
Cao Minh Tu
0

Se eu entendi sua pergunta correta, o comando GRASS v.type.bl pode ser usado para converter polígonos em linhas. veja o seguinte post: Como faço para dividir polígonos em segmentos de linha?

Kurt
fonte
Adicionei fotos para esclarecer a pergunta - muito obrigado.
Cao Minh Tu
@Cao Minh Tu: graças, as imagens deixam claro, eu entendi mal você
Kurt
0

Se você não possui a licença ArcInfo , pode usar o comando " geom.splitpolysbylines " no Ambiente de Modelagem Geoespacial . Funciona perfeitamente. Entretanto, verifique se você possui o ArcGIS 10.1 ou ArcGIS 10.0 SP4 e instalou o "R" 2.12 ou superior.

Doum
fonte
Minha pergunta era para o Qgis (mostrado na tag) - atualizei o cabeçalho para torná-lo mais visível. Obrigado mesmo assim!
Cao Minh Tu
1
Me desculpe por isso. De qualquer forma, se "outra pessoa" tiver o mesmo tipo de pergunta, ele / ela usará a opção que sugeri acima.
Doum