Usei a ferramenta de pesquisa "Pontos regulares" para produzir um certo número de pontos dentro de um polígono, mas ela forma uma grade retangular de pontos, e não apenas na forma do polígono. Como preciso de um certo número de pontos no polígono, existe alguma maneira de fazê-lo sem tentativa e erro?
Por exemplo, agora apenas 8 dos 25 pontos que eu quero estão dentro do polígono, mas eu quero 25 pontos, então eu poderia aumentar para 50 pontos e ver quantos então apareceriam dentro do polígono
qgis
polygon
vector-grid
celacanto
fonte
fonte
Respostas:
O que o QGIS está se referindo em termos do limite da camada é na verdade o envelope ou a caixa delimitadora da geometria.
Eu documentei uma solução que provavelmente é a mais próxima que você conseguirá de automatizar isso (sem apresentar uma solicitação de bug / recurso).
O processo funciona com base na razão entre a área dos dois objetos: a geometria do recurso e sua caixa delimitadora).
Verifique os seguintes passos abaixo:
Selecione a camada na qual deseja trabalhar.
Selecione o recurso que você deseja trabalhar. Verifique se nada mais está selecionado.
Execute o seguinte trecho no console do Python.
Certifique-se de pressionar enter, pois a última linha não retornará automaticamente.
Execute a
Regular Points
ferramenta novamente, mas insira o número de pontos que você deseja dentro da caixa multiplicado pela saída fornecida pelo seu script.Na minha amostra abaixo, o resultado que recebi da saída foi um valor de ~ 2. Solicitei a saída de 20 pontos pelo processo em que realmente queria apenas 10. Recebi 8 em troca, o que é bastante próximo. Dependendo da forma real que você está usando, os resultados variam.
Se você fosse tão inclinado, poderia automatizar (recursivamente) o processo de pontos regulares modificando as variáveis até chegar ao número desejado.
fonte
Você pode facilmente fazer isso apenas cortando: gere a grade regular de pontos da mesma forma que fez e, em seguida, use Vetor> Ferramentas de geoprocessamento> Clipe, insira a grade de pontos gerada e use o recurso como máscara de clipe.
fonte
Uma solução simplista é sugerida pela captura de tela. Você pode extrair os polígonos em novas camadas com
Vector -> Data Managment Tools -> Split vector layer
, importá-los e, em seguida, escolher a camada com o recurso (ID) que deseja como camada de entrada para o amostrador "Pontos regulares".Se você precisar fazer isso por apenas alguns polígonos, localizá-los e exportá-los separadamente pode ser mais eficiente. Depois de selecionar um, clique com o botão direito do mouse no nome da camada e escolha
Save Selection As ...
, escolha shapefile, preencha o restante e repita como antes.EDIT: Como você já possui um único recurso, não consigo pensar em nada mais simples do que usar uma grade mais densa, cruzando-a com o polígono novamente e finalmente removendo todos os pontos extranústicos (mais fácil através da tabela de atributos, já que é fácil centralizar e contagem total).
fonte
Aplique uma consulta de definição aos seus polígonos (em 1.8, clique com o botão direito do mouse na camada e escolha Consulta). Em seguida, execute a ferramenta. Remova a consulta.
fonte