[QGIS-pt] PostGIS - encolher campo geom

Olá,

Transformei um ficheiro shape numa tabela postgis.
A coluna geométrica no Postgis (geom) ficou em branco, já vi que isso é algo
comum e que na verdade os limites estão lá, o que confirmei no QGIS.
<http://osgeo-org.1560.x6.nabble.com/file/n5150484/1.png&gt;

Precisava de:
1º - colocar "visível" o conteúdo da coluna geom
2º - como já vi que o conteúdo do campo geom é enorme, gostaria de o colocar
com um tamanho mais aceitável. Qual a função mais adequada? ST_AsText ?

Obrigado,
Pedro

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484.html
Sent from the QGIS-pt mailing list archive at Nabble.com.

Olá Pedro,

Neste caso não há soluções mais adequadas que outras. Mas vamos por partes:

  1. Quanto a isto não podes fazer grande coisa… a geometria está é apenas um bug de display do blob. Mas também não percebo o porquê da tua necessidades em meter visível esta informação uma vez que mesmo que a vejas não entendes nada… Queres explicar porque precisas disto?

  2. Aqui depende do que tu queiras e de como queiras visualizar a geometria. Assim tens várias possibilidades:
    a) função ST_astext que te devolve a geometria no formato standard WKT)
    b) função ST_asgeojson (geometria em formato geojson)
    c) A minha preferida, função ST_asewkt (que não só te devolve a geometria em WKT mas também o SRID [isto pode ser um vício de programador :)])
    d) Todas as outras funções listadas na secção 8.6 do manual: http://postgis.net/docs/reference.html

Espero que ajude.

Abc,

···

No dia 10 de Julho de 2014 às 15:07, Pedro <pedro.ferro@gmail.com> escreveu:

Olá,

Transformei um ficheiro shape numa tabela postgis.
A coluna geométrica no Postgis (geom) ficou em branco, já vi que isso é algo
comum e que na verdade os limites estão lá, o que confirmei no QGIS.
<http://osgeo-org.1560.x6.nabble.com/file/n5150484/1.png>

Precisava de:
1º - colocar “visível” o conteúdo da coluna geom
2º - como já vi que o conteúdo do campo geom é enorme, gostaria de o colocar
com um tamanho mais aceitável. Qual a função mais adequada? ST_AsText ?

Obrigado,
Pedro


View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484.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


Hugo Martins

Bem, a coisa é uma cadeia de eventos e pensei que daquela forma me ajudasse
no resultado final.

Se calhar vou explicar de forma detalhada o meu problema e pode ser que
esteja a pensar mal.

1. No pOstgis tenho uma tabela1 com todos os concelhos de Portugal
Continental, que, entre varias colunas tem uma com os limites (geom)

2 Acrescentei nessa tabela1 os concelhos das Regiões Autónomas. Preenchi
algumas colunas "alfanumericas" mas não a coluna geom

3 Pretendia "preencher" essa coluna geom na tabela1 que agora passou a ter
todos os concelhos de Portugal (os da Região Autónoma estão sem limites
-geom-)

4- Criei novas tabelas no Postgis com os concelhos das Regiões Autónomas,
incluindo claro os limites. Eram ficheiros shape que importei para o
Postgis, daí a coluna geom não aparecer "preenchida".

5- Pretendia copiar os limites (geom) das Regiões Autónomas, que estão nas
novas tabelas, para tabela1 que contém todo o Portugal

Não sei se esta será abordagem mais correcta/eficaz mas as minhas perguntas
iniciais têm a ver com isto.

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150495.html
Sent from the QGIS-pt mailing list archive at Nabble.com.

Olá Pedro,

Isto é uma história completamente diferente… não se tinha percebido que era isto que querias fazer. Nesse caso vais ter que fazer um query de update de acordo com o seguinte exemplo:

update concelhos
set the_geom = a.the_geom
from regioes_autonomas as a
where a.nome_concelho = concelhos.nome_concelho

onde:

  1. a tabela concelhos é a tabela à qual queres adicionar a informação geométrica
  2. a tabela regioes_autonomas é a tabela onde vais ler as geometrias

Mas atenção que precisas ter cuidado. Não te esqueças que na tua tabela o campo the_geom tem sempre um unico SRID e por isso vais ter que garantir que as gemetrias das regioes autonomas tb estao nesse SRID. Não sei qual o SRS que estás a utilizar… se estiveres a usar WGS84 não haverá problema pois é um datum global… já no caso do ETRS, Hayford-Gauss e outras a situação já é diferente. Por isso cuidado com estas coisas.

Abc,

···

No dia 10 de Julho de 2014 às 16:05, Pedro <pedro.ferro@gmail.com> escreveu:

Bem, a coisa é uma cadeia de eventos e pensei que daquela forma me ajudasse
no resultado final.

Se calhar vou explicar de forma detalhada o meu problema e pode ser que
esteja a pensar mal.

  1. No pOstgis tenho uma tabela1 com todos os concelhos de Portugal
    Continental, que, entre varias colunas tem uma com os limites (geom)

2 Acrescentei nessa tabela1 os concelhos das Regiões Autónomas. Preenchi
algumas colunas “alfanumericas” mas não a coluna geom

3 Pretendia “preencher” essa coluna geom na tabela1 que agora passou a ter
todos os concelhos de Portugal (os da Região Autónoma estão sem limites
-geom-)

4- Criei novas tabelas no Postgis com os concelhos das Regiões Autónomas,
incluindo claro os limites. Eram ficheiros shape que importei para o
Postgis, daí a coluna geom não aparecer “preenchida”.

5- Pretendia copiar os limites (geom) das Regiões Autónomas, que estão nas
novas tabelas, para tabela1 que contém todo o Portugal

Não sei se esta será abordagem mais correcta/eficaz mas as minhas perguntas
iniciais têm a ver com isto.


View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150495.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


Hugo Martins

Viva,

Mesmo que não tenhas as geometrias no mesmo SRID, podes usar na query update o ST_Transform para o SRID ‘target’.

Cumprimentos,

Fernando Ribeiro

···

No dia 10 de Julho de 2014 às 16:16, Hugo <hfpmartins@gmail.com> escreveu:

Olá Pedro,

Isto é uma história completamente diferente… não se tinha percebido que era isto que querias fazer. Nesse caso vais ter que fazer um query de update de acordo com o seguinte exemplo:

update concelhos
set the_geom = a.the_geom
from regioes_autonomas as a
where a.nome_concelho = concelhos.nome_concelho

onde:

  1. a tabela concelhos é a tabela à qual queres adicionar a informação geométrica
  2. a tabela regioes_autonomas é a tabela onde vais ler as geometrias

Mas atenção que precisas ter cuidado. Não te esqueças que na tua tabela o campo the_geom tem sempre um unico SRID e por isso vais ter que garantir que as gemetrias das regioes autonomas tb estao nesse SRID. Não sei qual o SRS que estás a utilizar… se estiveres a usar WGS84 não haverá problema pois é um datum global… já no caso do ETRS, Hayford-Gauss e outras a situação já é diferente. Por isso cuidado com estas coisas.

Abc,


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

Fernando Ribeiro

No dia 10 de Julho de 2014 às 16:05, Pedro <pedro.ferro@gmail.com> escreveu:

Bem, a coisa é uma cadeia de eventos e pensei que daquela forma me ajudasse
no resultado final.

Se calhar vou explicar de forma detalhada o meu problema e pode ser que
esteja a pensar mal.

  1. No pOstgis tenho uma tabela1 com todos os concelhos de Portugal
    Continental, que, entre varias colunas tem uma com os limites (geom)

2 Acrescentei nessa tabela1 os concelhos das Regiões Autónomas. Preenchi
algumas colunas “alfanumericas” mas não a coluna geom

3 Pretendia “preencher” essa coluna geom na tabela1 que agora passou a ter
todos os concelhos de Portugal (os da Região Autónoma estão sem limites
-geom-)

4- Criei novas tabelas no Postgis com os concelhos das Regiões Autónomas,
incluindo claro os limites. Eram ficheiros shape que importei para o
Postgis, daí a coluna geom não aparecer “preenchida”.

5- Pretendia copiar os limites (geom) das Regiões Autónomas, que estão nas
novas tabelas, para tabela1 que contém todo o Portugal

Não sei se esta será abordagem mais correcta/eficaz mas as minhas perguntas
iniciais têm a ver com isto.


View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150495.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


Hugo Martins

gracias,
vou testar

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150502.html
Sent from the QGIS-pt mailing list archive at Nabble.com.

Viva Fernando e Pedro,

O que queria dizer é que é preciso ter cuidado com essas reprojecções. A nível de Postgis obviamente é possível utilizando o st_transform mas aqui o problema que eu queria levantar é mais ao nível cartográfico. Ter uma camada com concelhos de PT cointinental e mais Regiões Autónomas em Hayford-Gauss é um erro porque o datum não teve em conta essa área… mas isto deixo para algum engenheiro geógrafo que faça parte da lista explicar… Alexandre Neto, queres pronunciar-te sobre isto?

Abc,

···

2014-07-10 16:23 GMT+01:00 Pedro <pedro.ferro@gmail.com>:

gracias,
vou testar


View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150502.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


Hugo Martins

Copiei então os limites das Regioes Autonomas para a minha tabela mas quando
a carrego no QGIS os limites das Regioes Autonomas não me aparecem (o campo
geom está preenchido)

Imagino que tenha a ver com essa questão que levantarm dos SRID.

Reparei que na minha tabela principal (que tem agora todos os limites), não
tenho srid atribuído

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150517.html
Sent from the QGIS-pt mailing list archive at Nabble.com.

Tens razão Hugo no reparo. Dependendo do objectivo em causa, o ideal seria usar um datum global para evitar esse tipo de incoerências.

Cumps,

···

No dia 10 de Julho de 2014 às 16:55, Hugo <hfpmartins@gmail.com> escreveu:

Viva Fernando e Pedro,

O que queria dizer é que é preciso ter cuidado com essas reprojecções. A nível de Postgis obviamente é possível utilizando o st_transform mas aqui o problema que eu queria levantar é mais ao nível cartográfico. Ter uma camada com concelhos de PT cointinental e mais Regiões Autónomas em Hayford-Gauss é um erro porque o datum não teve em conta essa área… mas isto deixo para algum engenheiro geógrafo que faça parte da lista explicar… Alexandre Neto, queres pronunciar-te sobre isto?

Abc,


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

Fernando Ribeiro

2014-07-10 16:23 GMT+01:00 Pedro <pedro.ferro@gmail.com>:

gracias,
vou testar


View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150502.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


Hugo Martins

Bem para fechar este meu problema, na minha tabela principal atribui o srid
4326, com a função ST_SetSRID, e voilà está tudo no seu lugar!

Agradeço a vossa ajuda,

Pedro

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/PostGIS-encolher-campo-geom-tp5150484p5150525.html
Sent from the QGIS-pt mailing list archive at Nabble.com.