Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster.
As shapefiles que consigo não são más (um pequeno extracto está anexado), mas o problema é que estão divididos em muitas "lines" separadas. Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma "polyline". Queria também juntar cada rio com os seus afluentes numa "network". Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo "merge" as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas "lines" separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma "polyline". Queria também juntar cada rio com os seus afluentes numa "network". Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo "merge" as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas “lines” separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma “polyline”. Queria também juntar cada rio com os seus afluentes numa “network”. Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo “merge” as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Podes facilmente obter o que pretendes utilizando o processing do QGIS com o SAGA instalado.
Procura pela ferramenta Line Dissolve no processing toolbox. A única coisa que tens que fazer antes é criar um campo na shapefile que indique quais geometrias unir. Imagina que tens 3 linhas separadas (geometrias individuais) e que queres juntar 2 delas. A tua tabela de atributos deveria então estar construida da seguinte forma:
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas “lines” separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma “polyline”. Queria também juntar cada rio com os seus afluentes numa “network”. Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo “merge” as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Podes facilmente obter o que pretendes utilizando o processing do QGIS com o SAGA instalado.
Procura pela ferramenta Line Dissolve no processing toolbox. A única coisa que tens que fazer antes é criar um campo na shapefile que indique quais geometrias unir. Imagina que tens 3 linhas separadas (geometrias individuais) e que queres juntar 2 delas. A tua tabela de atributos deveria então estar construida da seguinte forma:
| GID | GEOM | Uniao |
| 1 | geom1 | 1 |
| 2 | geom2 | 2 |
| 3 | geom3 | 1 |
Com esta tabela iria juntar as geometrias geom1 e geom2 em uma unica.
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas “lines” separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma “polyline”. Queria também juntar cada rio com os seus afluentes numa “network”. Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo “merge” as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Muito obrigado pela resposta pronta. Na verdade eu já tinha encontrado esta solução, mas o meu problema é precisamente a definição de quais as linhas a “dissolver” (tenho cerca de 20 000 segmentos…). Eu estava à procura de uma forma de identificar as linhas que estão juntas espacialmente (uma termina onde começa a outra) para fazer isto.
Já ouvi falar que há uma forma de conseguir isto com o GRASS, mas não consegui encontrar uma explicação prática.
Cumps,
Pedro
···
On 2015/01/16 15:59, Hugo wrote:
Pequena correcção,
utilizando a tabela que coloquei anteriormente estarias a juntar as geometrias geom1 e geom3 (olha para o campo uniao)
Podes facilmente obter o que pretendes utilizando o processing do QGIS com o SAGA instalado.
Procura pela ferramenta Line Dissolve no processing toolbox. A única coisa que tens que fazer antes é criar um campo na shapefile que indique quais geometrias unir. Imagina que tens 3 linhas separadas (geometrias individuais) e que queres juntar 2 delas. A tua tabela de atributos deveria então estar construida da seguinte forma:
| GID | GEOM | Uniao |
| 1 | geom1 | 1 |
| 2 | geom2 | 2 |
| 3 | geom3 | 1 |
Com esta tabela iria juntar as geometrias geom1 e geom2 em uma unica.
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas “lines” separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma “polyline”. Queria também juntar cada rio com os seus afluentes numa “network”. Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo “merge” as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas “lines” separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma “polyline”. Queria também juntar cada rio com os seus afluentes numa “network”. Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo “merge” as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas “lines” separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma “polyline”. Queria também juntar cada rio com os seus afluentes numa “network”. Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo “merge” as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Boa tarde. Tenho estado a capturar informação sobre alguns rios a partir da vectorização de mapas em raster. As shapefiles que consigo não são más, mas o problema é que estão divididos em muitas “lines” separadas
Ando à procura de um processo de juntar as diferentes linhas, de forma a que cada rio, e cada afluente, seja uma “polyline”. Queria também juntar cada rio com os seus afluentes numa “network”. Tentei vários processos, usando sobretudo as ferramentas do GRASS, mas não consigo “merge” as diferentes linhas numa só.
Agradeço se alguém tiver ideias de como fazer isto.
Cumprimentos, Pedro
PS: Posso mandar um exemplo da shapefile, mas acho que o servidor do grupo não permite anexos
Se entendo bem, o objectivo é criar uma rede consistente, onde cada segmento se encontra quebrado nas intersecções, é isso?
Então a minha sugestão é juntar todos os segmentos num só com o “Merge selected features” do QGIS (layer em edição, seleccionas todos os segmentos e fazes o merge).
Depois carregas a layer no GRASS e, em princípio, durante o import, o GRASS logo te faz a correcção topológica que pretendes. Para teres a certeza, corres o v.clean.break: http://grass.osgeo.org/grass65/manuals/v.clean.html
Vê o resultado deste processo na shape de teste que disponibilizaste (em anexo). Estes dados são de Angola (Lunda Norte)?
Vou tentar essa ideia, sim. Depois informo o resultado. São dados parciais de Angola, sim.
Abraço,
Pedro
On 2015/01/17 16:20, Pedro Venâncio wrote:
Boa tarde Pedro,
Se entendo bem, o objectivo é criar uma rede consistente, onde cada segmento se encontra quebrado nas intersecções, é isso?
Então a minha sugestão é juntar todos os segmentos num só com o "Merge selected features" do QGIS (layer em edição, seleccionas todos os segmentos e fazes o merge).
Depois carregas a layer no GRASS e, em princípio, durante o import, o GRASS logo te faz a correcção topológica que pretendes. Para teres a certeza, corres o v.clean.break: http://grass.osgeo.org/grass65/manuals/v.clean.html
Vê o resultado deste processo na shape de teste que disponibilizaste (em anexo). Estes dados são de Angola (Lunda Norte)?
Vou tentar essa ideia, sim. Depois informo o resultado. São dados parciais de Angola, sim.
Abraço,
Pedro
On 2015/01/17 16:20, Pedro Venâncio wrote:
Boa tarde Pedro,
Se entendo bem, o objectivo é criar uma rede consistente, onde cada segmento se encontra quebrado nas intersecções, é isso?
Então a minha sugestão é juntar todos os segmentos num só com o “Merge selected features” do QGIS (layer em edição, seleccionas todos os segmentos e fazes o merge).
Depois carregas a layer no GRASS e, em princípio, durante o import, o GRASS logo te faz a correcção topológica que pretendes. Para teres a certeza, corres o v.clean.break: http://grass.osgeo.org/grass65/manuals/v.clean.html
Vê o resultado deste processo na shape de teste que disponibilizaste (em anexo). Estes dados são de Angola (Lunda Norte)?