QGIS - Preencher campos automaticamente obtendo informações de outras camadas.
HTML-код
- Опубликовано: 5 сен 2024
- Nesse vídeo iremos aprender como preencher valores de campos em tempo real a partir de informações de outras camadas. Iremos utilizar a função aggregate para obter uma lista de municípios que fazem intersecção com um polígono e retornar o nome do maior município, em área.
Link para a discussão na comunidade QGISBR: groups.google....
Expressões utilizadas nesse vídeo:
Retorna o nome do maior município que intersecta com a Zona:
attribute(get_feature('municipios','area_km2',aggregate(
layer:= 'municipios',
aggregate:='max',
expression:=area_km2,
filter:=intersects($geometry, geometry(@parent))
)), 'municipio')
Retorna os nomes dos municípios que intersectam com a Zona:
aggregate(
layer:= 'municipios',
aggregate:='concatenate',
expression:=municipio,
concatenator:=',',
filter:=intersects($geometry, geometry(@parent))
)
Link para download dos dados e projeto:
bit.ly/2L2FcqR
Deixe seu comentário dizendo o que você achou e dê sua sugestão para vídeos futuros.
____________________
Siga-nos nas redes sociais:
Blog: narceliodesa.com/
Twitter: / narceliodesa
Facebook: / narceliodesafilho
Instagram: / narceliodesa
____________________
Link úteis para o QGIS:
Página oficial para Download: qgis.org/en/site/
Página da comunidade brasileira de usuários: qgisbrasil.org/
Google Grupo: groups.google.c...
Grupo no Facebook: / qgisbrasil
Página no Facebook: / qgisbrasil
Twitter: / qgis_br
caramba, você é incrível
Olá Caio Couto , obrigado pelo comentário! Apenas tento ajudar a comunidade a tirar o melhor que o QGIS pode oferecer :)
muito obrigado, seu vídeo me ajudou muito
Olá orlando medeiros , obrigado pelo comentário! Continue acompanhando o canal para receber novos vídeos sobre QGIS :) Grande Abraço
Qual a expressão utilizada para auto gerar o fid?
valeuu
Muito obrigados! Fico feliz que tenha gostado do vídeo. Se tiver alguma pergunta ou comentário, não hesite em compartilhar. 😊
Boa Tarde, posso ultilizar o mesmo comanto com tipo de geometria ponto, por exemplo em um determinado ponto da cidade no lote ele preenche o numero do lote automaticamente ?
Sim, é possível.
Primeiramente, meus parabéns pelo trabalho Narcélio!!!
Tenho uma outra situação parecida com está que vc apresentou, como poderia realizar o somatório automático das edificações presentes em uma parcela territorial que estou espacializando?
Já tenho uma camada de edificações com um atributo contendo as áreas pelo somatório de pavimentos existentes.
Vc vai utilizar apenas a função aggregate com o argumento "sum".
aggregate(
layer:= 'edificacao',
aggregate:='sum',
expression:= "area",
filter:= intersects($geometry, geometry(@parent))
)
Depois eu testei o comando e o problema é que ele contabiliza também para a parcela vizinha, quando a edificação for colada na lateral.
Para resolver isso vc deve utilizar o seguinte filtro: filter:= within(centroid($geometry),geometry(@parent))
Dessa forma ele só vai somar as áreas das edificações com o centroide dentro do polígono da parcela.
@@robsonmartins5587 para evitar esse erro é preciso realizar o calculo utilizando um centroide ou um ponto de superfície
aggregate(
layer:= 'NOME_DA_CAMADA',
aggregate:='sum',
expression:=ATRIBUTO_DA_CAMADA,
filter:=intersects ( point_on_surface( $geometry), (geometry(@parent)))
)
ou vc pode tirar a calculo do ponto de superfície gerando uma camada com esse proposito
Bom dia
Tem como aproveitar os atributos de um projeto em outro projeto?Melhor dizendo: aproveitar a tabela de atributos de uma camada de um projeto em uma outra camada de um outro projeto,tem como aproveitar?