@ziggy estava tentando fazer exatamente isso, mas a documentação não é muito clara e não há nenhum exemplo com geometrias de diferentes tabelas
Luffydude
Ive nunca utilizou esta função, mas imagino que seria algo como isto: selecionar t1.columns etc, t2.columns etc .. st_makeline (t1.geom, t2.geom) a partir de T1, T2
Ziggy
@ziggy recebendo erro de sintaxe nos suportes quando eu tentei select id, geom como st_makeline (a.geom, b.geom),
Luffydude
postar toda a sua consulta
ziggy 30/03
Respostas:
4
No QGIS, você pode usar o plug-in Connect Points, do qual você pode baixar:
Plugins > Manage and Install Plugins...
Exemplo:
Aqui estão algumas camadas, layer_Atem vários pontos; layer_Btem um. Certifique-se de que as duas camadas contenham um campo inteiro em que os valores sejam exatamente os mesmos (por exemplo, ambas as minhas camadas têm um idcampo em que todos os valores são 1). O plugin usa isso para conectar seus pontos. Quando o seu plugin estiver ativado, vá para as configurações:
Selecione as opções:
Resultado:
Observe que este plug-in é experimental, portanto, você precisará habilitar a Show also experimental pluginsopção (graças a @blue_chip ):
Não sei por que minha edição foi excluída, mas mesmo assim, caso você não a tenha lido: uau, pessoal, algumas respostas bem variadas aqui. Um Python, um plugin e um Postgis. Dar o visto ao plug-in, pois ele é o mais amigável ao GIS e também por causa da carinha sorridente. Obrigado a todos!
30517 Luffydude
@Luffydude - Sua edição provavelmente foi excluída porque não adicionou muito à sua pergunta geral, mas você está certo, respostas muito diferentes! :)
Joseph
1
Você precisa habilitar plugins experimentais para encontrar este. Eu tive que parecer um pouco mais até que me ocorreu. Plugins> Configurações> Check Mostrar também plugins experimentais
blue_chip 4/17/17
@blue_chip - Desculpas, eu deveria ter mencionado isso. Será que editar isso em :) #
Joseph
3
se as duas camadas são pontos, a consulta abaixo deve funcionar, basta conectar seus próprios dados. Eu fiz um teste com a criação de linhas a partir de 1 camada com mais de 150 linhas de pontos e uma camada com 1 ponto
droptableifexists line;createtable line asselect layer1.id ,st_makeline(layer1.geom,point.geom)as geom from layer1,point
Respostas:
No QGIS, você pode usar o plug-in Connect Points, do qual você pode baixar:
Exemplo:
Aqui estão algumas camadas,
layer_A
tem vários pontos;layer_B
tem um. Certifique-se de que as duas camadas contenham um campo inteiro em que os valores sejam exatamente os mesmos (por exemplo, ambas as minhas camadas têm umid
campo em que todos os valores são1
). O plugin usa isso para conectar seus pontos. Quando o seu plugin estiver ativado, vá para as configurações:Selecione as opções:
Resultado:
Observe que este plug-in é experimental, portanto, você precisará habilitar a
Show also experimental plugins
opção (graças a @blue_chip ):fonte
se as duas camadas são pontos, a consulta abaixo deve funcionar, basta conectar seus próprios dados. Eu fiz um teste com a criação de linhas a partir de 1 camada com mais de 150 linhas de pontos e uma camada com 1 ponto
fonte
Supondo que você comece com essa situação (uma camada de pontos com um recurso e uma camada de pontos com 300 recursos):
você pode executar esse código no Python Console (depois de carregar as duas camadas de interesse no QGIS):
para obter este resultado:
Você só precisa adaptar os nomes das camadas (
'1point'
e'300points'
) aos nomes com os quais elas são carregadas no painel Camadas .Minha abordagem funcionará independentemente do número de recursos em ambas as camadas.
fonte