conversão de linhas para pontos

1,497 views
Skip to first unread message

Joaquim Ribeiro

unread,
Oct 29, 2016, 4:34:38 PM10/29/16
to qgisbrasil
Olá,

Gostaria de saber como se transformar linhas (com aproximadamente 50 m) em pontos (espaçados a cada 1 m).
Situação: Vetorizei feições lineares com aproximadamente 50 m que possuem ocorrências distribuídas a cada 1 m ao longo dessa linha.

Agradeço a atenção!!

Joaquim 

Leônidas Descovi Filho

unread,
Oct 29, 2016, 5:54:23 PM10/29/16
to qgisbrasil
Oi Joaquim

Use coordenadas UTM e selecione o menu Vetor --> Investigar --> Pontos regulares... e escolha o espaçamento desejado.

Boa sorte Abs

Leônidas



--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+unsubscribe@googlegroups.com.
Para postar nesse grupo, envie um e-mail para qgisb...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/qgisbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.

José Ricardo Pitanga Negrão

unread,
Oct 29, 2016, 6:08:01 PM10/29/16
to qgisb...@googlegroups.com
Joaquim,

Boa noite irmao

Veja bem - eu uso com maior frequencia a função  Split Polylines no ArcGIS


Split Polylines

 

 

Purpose

 

The tool is aimed to advanced splitting of polyline features.

 

Description

 

The tool provides ArcGIS users with capabilities to split polyline features into separate segments in various customizable ways.

 

Usage

 

  1. Select the "Split Polylines" tool from the XTools Pro Feature Conversions menu.

  2. Select the input layer containing polylines that you wish to split.

  3. Specify the name and location of the output feature class.

  4. Select method for splitting input polyline features.

  5. Specify ID field to store input features IDs.

  6. Press Run to split polylines.

 

 

 

Following split methods are available :

 

  • At all vertices

- input polylines will be split at all vertices, the number of output polylines depends on how many vertices exist in the input polylines. Note, in some cases the vertices density can be high enough so that applying this method will result in great many of short polylines. In such cases you can apply the Show Nodes tool first, to figure out how many nodes (vertices) are there in the input polylines.

 

  • Into specified segments

- input polylines will be split into segments of the specified length (except the last segment), at that splitting always starts from the start (from) node of the input polylines.

 

  • Into equal segments

- input polylines will be split into given number of equal segments.

 

  • At intersections

- input polylines will be split at all intersections within the input polyline layer. This option is similar to the ArcGIS Planarize tool and can be useful when dealing with non-topological or spaghetti digitized line work.

 

  • At the points of change of slope direction

- input polylines will be split at the points of change of the direction of the slope.

Notes:

- By default this option relates and can be applied to 3D polylines but in the XTools Pro Customize dialog you can change to detect changes for any direction.

 

  • By another layer

- input polylines will be split at the intersections with another specified polygon, polyline or point layer (or by selected features of another layer).

Notes:

- When polylines are split at intersections with another layers they are split at self-intersections as well.

- When splitting by point layer it is highly recommended to specify and use tolerance, otherwise make sure that points are located exactly on the polylines.

 

---


Veja se tu consegue usar uma ferramenta similar no Qgis, algo do tipo:


Plugin: Linear referencing plugin





Se tu nao conseguir - ´posta novamente o request que tentarei desenvolver melhor a sua solicitação

abraços


Negrao




--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+unsubscribe@googlegroups.com.
Para postar nesse grupo, envie um e-mail para qgisb...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/qgisbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.



--
Ricardo Negrão

yjmenezes

unread,
Oct 29, 2016, 6:19:23 PM10/29/16
to qgisbrasil
Joaquim,

Ontem postei um exemplo com o PostGIS usando a funcao ST_Segmentize();
No exemplo usei coordenada geodesicas Lat/Lon mas a funcao opera em sistema projetado como UTM.

O interessante eh que a funcao faz os calculos em 2D ou em 3D. 

geometry ST_Segmentize(geometry geom, float max_segment_length);

pode construir uma SQL tipo:
update TTTT set GGGG = ST_Segmentize(GGGG,1.0) where gid<=(select count (*) from TTTT);

onde TTTT seria o nome de sua tabela e GGG a coluna de geometria e a clausula WHERE vai varrer toda a tabela em funcao do gid ( no caso gid );

Se suas linestrings forem 3D, o calculo ocorrera em 3D, sendo interpolados X,Y e Z.   ( seria o caso de tubos de encanamento em terrenos inclinados );


[]s
julio menezes
cartognu.org

yjmenezes

unread,
Oct 29, 2016, 6:40:05 PM10/29/16
to qgisbrasil
@Joaquim

complementando, voce pode extrair os pontos depois (dp), da linstring cujo gid=1,  com algo tipo:

select st_astext((dp).GGGG), st_Z((dp).GGGG) from (select ST_DumpPoints(GGGG) as dp from TTTT where gid=1) as foo;

estes comandos podem ser passados ao PostGIS, via  QGIS em:
BancoDeDados->GerenciadorBD ou
BancoDeDados->PostGIS->SQLeditor
BancoDeDados->PostGISQueryBuilder

deve ter outras formas, eu normalmente acabo ficando na telinha preta;

[]s
julio

Leônidas Descovi Filho

unread,
Oct 29, 2016, 9:01:09 PM10/29/16
to qgisbrasil
Camaradas

Só corrigindo um equivoco. A opção de menu que citei irá resultar em uma grade regular de pontos conforme a figura:
Imagem inline 1
A linha permaneceu sem pontos de metro em metro...E, portanto, não atende a necessidade do Joaquim.

Não me ocorre no momento, mas existe uma ferramenta nativa que faz essa tarefa, favor quem recordar compartilhar.

Abs e boa sorte

Leônidas



TELESIG

unread,
Oct 30, 2016, 1:20:50 AM10/30/16
to qgisb...@googlegroups.com

Using the GRASS plugin, you can split lines using v.to.points:

# convert line to points; dmax = distance between points v.to.points -i -v -t in=osm_road out=osm_road_pts type=line dmax=90

You'll have to import the line layer into GRASS first. That's easy using e.g. v.in.ogr.qgis which accepts a layer which is already loaded into QGIS.

http://gis.stackexchange.com/questions/23515/how-to-split-a-polyline-into-points-at-certain-intervals

Saludos

TELESIG

unread,
Oct 30, 2016, 1:22:04 AM10/30/16
to qgisb...@googlegroups.com

Narcélio de Sá Pereira Filho

unread,
Oct 30, 2016, 9:35:46 AM10/30/16
to qgisb...@googlegroups.com
Olá Joaquim, o plugin qchainage resolve seu problema.
Existem dois algorítimos que podem ajudar, mas eles tem que ser utilizados com cautela. 

v.to.points, do Grass
No v.to.point o parâmetro  dmax ( distância máxima) é o limite máximo para a criação do ponto e não representa a distância exata. Ou seja, os pontos não poderão estar localizado a uma distância (raio) maior que 10 metros um do outro. Mas não que dizer que estarão exatamente a 10 metros um do outro seguindo a linha original.

Create poins along lines, do QGIS
Não consegui localizar a documentação desse algorítimo, mas aparentemente ele funciona de maneira parecida com o v.to.points. Com a diferença que esse inicia o processo pelo ponto inicial da linha e o v.to.poins pelo ponto final. 

Já o Qchainege usa a distância linear, criando pontos alongo da linha a partir da distância especificada. 



Em dom, 30 de out de 2016 às 02:21, TELESIG <teles...@gmail.com> escreveu:
El 29/10/2016 11:20 p. m., "TELESIG" <teles...@gmail.com> escribió:

Using the GRASS plugin, you can split lines using v.to.points:

# convert line to points; dmax = distance between points v.to.points -i -v -t in=osm_road out=osm_road_pts type=line dmax=90

You'll have to import the line layer into GRASS first. That's easy using e.g. v.in.ogr.qgis which accepts a layer which is already loaded into QGIS.

http://gis.stackexchange.com/questions/23515/how-to-split-a-polyline-into-points-at-certain-intervals

Saludos

El 29/10/2016 7:01 p. m., "Leônidas Descovi Filho" <leo...@gmail.com> escribió:
Camaradas

Só corrigindo um equivoco. A opção de menu que citei irá resultar em uma grade regular de pontos conforme a figura:
resultado.png
Abs e boa sorte

Leônidas



Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+...@googlegroups.com.

Para postar nesse grupo, envie um e-mail para qgisb...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/qgisbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+...@googlegroups.com.

Para postar nesse grupo, envie um e-mail para qgisb...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/qgisbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.

--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+...@googlegroups.com.
Captura de tela de 2016-10-30 10-34-47.png
Captura de tela de 2016-10-30 10-35-05.png

Joaquim Ribeiro

unread,
Oct 30, 2016, 2:28:59 PM10/30/16
to qgisbrasil
Olá, pessoal, obrigado pelas dicas e respostas! Informarei sobre meus avanços com a ferramenta.

Abraço,

Joaquim

Em sábado, 29 de outubro de 2016 18:34:38 UTC-2, Joaquim Ribeiro escreveu:

Leônidas Descovi Filho

unread,
Oct 30, 2016, 7:26:47 PM10/30/16
to qgisbrasil
Grande Dica Narcélio!

Funcionou muito bem por sinal. Qchainege.

Abs e boa sorte aos que necessitarem.

Leônidas



--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages