[QGIS-pt] Digest QGIS-pt, volume 5, assunto 14

Boa tarde.

Há algum tempo (Junho ou Julho) por este mesmo mailing list (com texto todo em Inglês) foi enviado
um convite para envio de texto para um jornal a ser publicado em 2015. O resumo tem
de ser submetido até o próximo dia 15 desta semana se não estou em erro.
Não encontro nos meus arquivos essa informação porque devo ter removido sem querer
esse mailing list. O facto é já não o ter.
Se eventualmente alguém tiver esse mail com a essa informação e pudesse fazer o
favor de me o enviar pf, desde já mto agradeço.
Estou a preparar um artigo para submeter e sem esse email nada feito.
Muito obrigado.
Um abraço,

JCS

···

No dia 11 de Agosto de 2014 às 20:00, <qgis-pt-request@lists.osgeo.org> escreveu:

Send QGIS-pt mailing list submissions to
qgis-pt@lists.osgeo.org

To subscribe or unsubscribe via the World Wide Web, visit
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt
or, via email, send a message with subject or body ‘help’ to
qgis-pt-request@lists.osgeo.org

You can reach the person managing the list at
qgis-pt-owner@lists.osgeo.org

When replying, please edit your Subject line so it is more specific
than “Re: Contents of QGIS-pt digest…”

Tópicos de Hoje:

  1. FW: st_Force_2D (Carlos Jacinto)
  2. Re: FW: st_Force_2D (duartecarreira)
  3. Re: FW: st_Force_2D (Carlos Jacinto)

Message: 1
Date: Mon, 11 Aug 2014 12:11:03 +0100
From: Carlos Jacinto <carlosjacinto@hotmail.com>
To: “qgis-pt@lists.osgeo.org” <qgis-pt@lists.osgeo.org>
Subject: [QGIS-pt] FW: st_Force_2D
Message-ID: DUB124-W242D421C4D6610A34CC84FBBED0@phx.gbl
Content-Type: text/plain; charset=“iso-8859-1”

Duarte,

Testei a linha abaixo mas surge o seguinte erro: ERRO: modificador de tipo não é permitido para tipo “geometry” SQL state: 42601

ALTER TABLE emarp.agua_junta_cega ALTER COLUMN geom SET DATA TYPE
geometry(Point,27492) USING ST_Transform(ST_Force_2D(geom),27492)

Creio que poderá ter que ver com a versão do Postgis "POSTGIS=“1.5.1”.

Se assim for alguêm me dá alguma dica como transformar os registos…

From: carlosjacinto@hotmail.com
To: qgis-pt@lists.osgeo.org
Subject: RE: [QGIS-pt] coluna da geometria geom e the_geom
Date: Mon, 11 Aug 2014 11:46:07 +0100

Duarte,

A razão por ter adoptado por st_ndims = 4 é que os pontos que estou a tratar têm cota z.

Fiz o que me proposeste e de facto os vectores não se encontravam uniformizados.

Como poderei então converter e uniformizar os registos.

Existe a função st_force , será a indicada ?
ALTER agua_boca_rega geom ADD geom2d geometry
UPDATE geom SET geom2d = ST_Force_2D(the_geom)

Date: Mon, 11 Aug 2014 02:38:12 -0700
From: dncarreira@gmail.com
To: qgis-pt@lists.osgeo.org
Subject: Re: [QGIS-pt] coluna da geometria geom e the_geom

Carlos,

Qual a razão de ter st_ndims = 4? Os vectores têm coordenadas x,y,z,m?

Se for o caso, penso que o QGIS não edita dados 3d. E não sei se edita dados
com coordenada m. Penso que não, mas talvez alguém possa confirmar?

Por outro lado, ao adicionar a constraint de obrigar os vectores a terem 4
coords, deu erro. Logo pelo menos parte dos vectores não têm essa dimensão.
Tens de verificar que tipo de vectores estão afinal nessa tabela.

Este sql deve mostrar as dims existentes:

select st_ndims(geom),count(*) from <tabela_espacial> group by
st_ndims(geom);

Convém que numa tabela todos os vectores sejam do mesmo tipo. Se for
preciso, terás de converter alguns vectores para uniformizar. Ou criar uma
nova tabela com apenas xy. Se precisares da coord z poderá ser suficiente
uma coluna com esses valores?

Quanto ao facto de teres o problema inicial de tabelas “mortas” a aparecer é
porque o postgis <2.0 não mantém automaticamente o registo das tabelas
espaciais (vê public.geometry_columns). Para manter este registo actual,
deves criar e apagar tabelas espaciais com as funções de gestão do postgis
ou terás de manter os registos manualmente com inserts e deletes:

AddGeometryColumn
DropGeometryColumn
DropGeometryTable
Populate_Geometry_Columns
Probe_Geometry_Columns

Toda a info aqui:
http://postgis.refractions.net/documentation/manual-1.5/reference.html#Management_Functions

Abr,
Duarte


View this message in context: http://osgeo-org.1560.x6.nabble.com/coluna-da-geometria-geom-e-the-geom-tp5155514p5155768.html
Sent from the QGIS-pt mailing list archive at Nabble.com.


QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt

-------------- próxima parte ----------
Um anexo em HTML foi limpo…
URL: <http://lists.osgeo.org/pipermail/qgis-pt/attachments/20140811/d3edee37/attachment-0001.html>


Message: 2
Date: Mon, 11 Aug 2014 04:59:52 -0700 (PDT)
From: duartecarreira <dncarreira@gmail.com>
To: qgis-pt@lists.osgeo.org
Subject: Re: [QGIS-pt] FW: st_Force_2D
Message-ID: <1407758392055-5155795.post@n6.nabble.com>
Content-Type: text/plain; charset=UTF-8

O que eu faria era criar uma nova tabela com uma nova coluna coordZ e
adicionava a coluna de geometria depois:

SELECT AddGeometryColumn
(‘my_schema’,‘my_spatial_table’,‘the_geom’,27492,‘POINT’,2);

Depois copiava os dados anteriores para a nova tabela, criando os pontos
apenas com o x e y das geometrias originais, e copiando a coord z para a
nova coluna:

INSERT INTO my_table (col1, col2, col3, the_geom, coordz)
SELECT col1, col2, col3, ST_Force_2D(the_geom), ST_Z(the_geom)
FROM my_table AS old

Se o ST_Force_2D não funcionar podemos construir a geometria com
st_geomfromtext ou com st_setsrid(st_point(x,y), 27492):
st_geomfromtext(‘POINT (’ || ST_X(the_geom)::text || ’ ’ ||
ST_Y(the_geom)::text ||‘)’, 27492)

nota: não testei o sql…

Há com certeza outras formas de fazer isto…


View this message in context: http://osgeo-org.1560.x6.nabble.com/coluna-da-geometria-geom-e-the-geom-tp5155514p5155795.html
Sent from the QGIS-pt mailing list archive at Nabble.com.


Message: 3
Date: Mon, 11 Aug 2014 15:31:33 +0100
From: Carlos Jacinto <carlosjacinto@hotmail.com>
To: QGIS PT - lista de utilizadores QGIS, em português.
<qgis-pt@lists.osgeo.org>
Subject: Re: [QGIS-pt] FW: st_Force_2D
Message-ID: DUB124-W3857BAA0012069EB29B022BBED0@phx.gbl
Content-Type: text/plain; charset=“iso-8859-1”

Obrigado Duarte pelas recomendações e sugestões que me envias-te.

Acabei por conseguir resolver a situação:

1: update emarp.agua_hidrante set geom = ST_Force_2D(geom);

2: vacuum full analyze emarp.agua_boca_rega ;

3: update public.geometry_columns set coord_dimension = ‘2’ where f_table_name = ‘agua_boca_rega’

4: ALTER TABLE emarp.agua_boca_rega ADD CONSTRAINT enforce_srid_geom CHECK (srid(geom) = 27492);

5: ALTER TABLE emarp.agua_boca_rega ADD CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = ‘POINT’::text OR geom IS NULL);

6: ALTER TABLE emarp.agua_boca_rega ADD CONSTRAINT enforce_dims_geom CHECK (st_ndims(geom) = 2);

Obrigado a todos pelo apoio e espero tambem poder contribuir.

Cumprimentos

Date: Mon, 11 Aug 2014 04:59:52 -0700
From: dncarreira@gmail.com
To: qgis-pt@lists.osgeo.org
Subject: Re: [QGIS-pt] FW: st_Force_2D

O que eu faria era criar uma nova tabela com uma nova coluna coordZ e
adicionava a coluna de geometria depois:

SELECT AddGeometryColumn
(‘my_schema’,‘my_spatial_table’,‘the_geom’,27492,‘POINT’,2);

Depois copiava os dados anteriores para a nova tabela, criando os pontos
apenas com o x e y das geometrias originais, e copiando a coord z para a
nova coluna:

INSERT INTO my_table (col1, col2, col3, the_geom, coordz)
SELECT col1, col2, col3, ST_Force_2D(the_geom), ST_Z(the_geom)
FROM my_table AS old

Se o ST_Force_2D não funcionar podemos construir a geometria com
st_geomfromtext ou com st_setsrid(st_point(x,y), 27492):
st_geomfromtext(‘POINT (’ || ST_X(the_geom)::text || ’ ’ ||
ST_Y(the_geom)::text ||‘)’, 27492)

nota: não testei o sql…

Há com certeza outras formas de fazer isto…


View this message in context: http://osgeo-org.1560.x6.nabble.com/coluna-da-geometria-geom-e-the-geom-tp5155514p5155795.html
Sent from the QGIS-pt mailing list archive at Nabble.com.


QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt

-------------- próxima parte ----------
Um anexo em HTML foi limpo…
URL: <http://lists.osgeo.org/pipermail/qgis-pt/attachments/20140811/f6556cd8/attachment-0001.html>



QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
http://lists.osgeo.org/cgi-bin/mailman/listinfo/qgis-pt

Fim da Digest QGIS-pt, volume 5, assunto 14


José Carlos Santos

Geografia Humana

Sistemas de Informação Geográfica

Análise de Imagens

Open Source

jcgarciadossantos@gmail.com