Transformação de coordenadas no PostGis

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Transformação de coordenadas no PostGis

catarina
Olá boa tarde,

Estou na fase de testes para a transformação do sistema de coordenadas Datum73 para o ETRS89 pelo método das grelhas da DGT.
Alguém já fez essa transformação com os dados provenientes do Postgres/Postgis?

Ao falar com alguns colegas vimos que tenho de exportar para shape (por forma a levar o gid e não descodificar os caracteres), depois transformar as coordenadas com o ntv2 do Qgis e exportar novamente para postgis. Este método é sem dúvida moroso ainda por cima não estou a conseguir converter em bloco os layers de cada esquema para shapefile com o comando de converter formato do GDAL.

Alguém sabe alguma forma mais simples de proceder a esta transformação sem ser por estes passos todos? O ideal é ter um script para correr em postgis :)

Obrigada


--
Ana Catarina Pinheiro
Divisão de Planeamento, Ambiente e Gestão Urbanística - Informação Geográfica
Município de Vale de Cambra

email: [hidden email]
web : http://www.cm-valedecambra.pt
tel: (+351)256 420 510

fax:(+351)256 420 519



_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal
Reply | Threaded
Open this post in threaded view
|

Re: Transformação de coordenadas no PostGis

hfpmartins
Olá Ana,

Eu nunca experimentei mas sei que, com algumas configurações adicionais, o PostGIS consegue efectuar transformações com grelhas ntv2.
Vê este link, pode ser que ajude:

http://blog.mackerron.com/2012/07/03/ostn02-for-postgis/

Entretanto, na comunidade PT, quase de certeza que algém já o fez... esperemos que se acusem :)

Cumprimentos,


No dia 31 de janeiro de 2017 às 15:40, Ana Catarina Ferreira Pinheiro <[hidden email]> escreveu:
Olá boa tarde,

Estou na fase de testes para a transformação do sistema de coordenadas Datum73 para o ETRS89 pelo método das grelhas da DGT.
Alguém já fez essa transformação com os dados provenientes do Postgres/Postgis?

Ao falar com alguns colegas vimos que tenho de exportar para shape (por forma a levar o gid e não descodificar os caracteres), depois transformar as coordenadas com o ntv2 do Qgis e exportar novamente para postgis. Este método é sem dúvida moroso ainda por cima não estou a conseguir converter em bloco os layers de cada esquema para shapefile com o comando de converter formato do GDAL.

Alguém sabe alguma forma mais simples de proceder a esta transformação sem ser por estes passos todos? O ideal é ter um script para correr em postgis :)

Obrigada


--
Ana Catarina Pinheiro
Divisão de Planeamento, Ambiente e Gestão Urbanística - Informação Geográfica
Município de Vale de Cambra

email: [hidden email]
web : http://www.cm-valedecambra.pt
tel: <a href="tel:+351%20256%20420%20510" value="+351256420510" target="_blank">(+351)256 420 510

fax:<a href="tel:+351%20256%20420%20519" value="+351256420519" target="_blank">(+351)256 420 519



_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal



--
Hugo Martins

_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal
Reply | Threaded
Open this post in threaded view
|

Re: Transformação de coordenadas no PostGis

Pedro Duarte
In reply to this post by catarina

Boa tarde,

 

 

Eu consegui fazer isso definindo da seguinte forma:

1.       Definir os sistemas de coordenadas com a definição do XLS em anexo.

2.       Colocar o ficheiros *.gsb na directoria gdal-data do posgis (\Program Files\PostgreSQL\9.x\gdal-data)

3.       Reiniciar o postgis

4.       Usar a função ST_Transform para fazer a conversão

 

 

 

Cumprimentos,

Pedro Duarte

 

logo_pduarte

 

De: Portugal [mailto:[hidden email]] Em nome de Ana Catarina Ferreira Pinheiro
Enviada: 31 de janeiro de 2017 14:40
Para: [hidden email]
Assunto: [Portugal] Transformação de coordenadas no PostGis

 

Olá boa tarde,

Estou na fase de testes para a transformação do sistema de coordenadas Datum73 para o ETRS89 pelo método das grelhas da DGT.
Alguém já fez essa transformação com os dados provenientes do Postgres/Postgis?

Ao falar com alguns colegas vimos que tenho de exportar para shape (por forma a levar o gid e não descodificar os caracteres), depois transformar as coordenadas com o ntv2 do Qgis e exportar novamente para postgis. Este método é sem dúvida moroso ainda por cima não estou a conseguir converter em bloco os layers de cada esquema para shapefile com o comando de converter formato do GDAL.

Alguém sabe alguma forma mais simples de proceder a esta transformação sem ser por estes passos todos? O ideal é ter um script para correr em postgis :)

Obrigada

 

--
Ana Catarina Pinheiro
Divisão de Planeamento, Ambiente e Gestão Urbanística - Informação Geográfica

Município de Vale de Cambra

email: [hidden email]
web : http://www.cm-valedecambra.pt
tel: (+351)256 420 510
fax:(+351)256 420 519


<img border=0 id="_x0000_i1025" src="file:///\\dcslave\nfsshares\logo.jpg"><img border=0 id="_x0000_i1026" src="file:///\\dcslave\nfsshares\apcer.jpg">


_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal

postgis.rar (322K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Transformação de coordenadas no PostGis

Giovanni Manghi
In reply to this post by catarina

From: Ana Catarina Ferreira Pinheiro <[hidden email]>
To: "[hidden email]" <[hidden email]>
Cc: 
Date: Tue, 31 Jan 2017 14:40:10 +0000
Subject: [Portugal] Transformação de coordenadas no PostGis
Olá boa tarde,

Estou na fase de testes para a transformação do sistema de coordenadas Datum73 para o ETRS89 pelo método das grelhas da DGT.
Alguém já fez essa transformação com os dados provenientes do Postgres/Postgis?


e (até num pequeno modelo ou em batch mode) reimportar os dados no PostGIS.

Cumprimentos

-- GM --

_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal
Reply | Threaded
Open this post in threaded view
|

Re: Transformação de coordenadas no PostGis

Ricardo Sena
In reply to this post by catarina
Boa tarde,


Para além da solução apresentada pelo Pedro Duarte, outra forma de fazer essa configuração pode ser através da seguinte forma:

1 - Copiar os ficheiros das grelhas (*.gsb) para a directoria C:\Program Files\PostgreSQL\9.4\share\contrib\postgis-2.2\proj (neste caso para uma instalação em windows; a path pode variar em função do local de instalação dos Postgres)

2 - Actualizar as definições dos sistemas de coordenadas da base de dados (na tabela spatial_ref_sys). Instruções de SQL (executar através do pgAdmin):

----------------------------------------------------------------------------
--Grelhas
-- Actualização dos sistemas de coordenadas para fazer trasnformação através do método das grelhas

-- 27492 - Hayford-Gauss, Datum 73, IGP
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-223.237,110.193,36.649,0,0,0,0 +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=tmerc +ellps=intl +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=180.598 +y_0=-86.990 +units=m +nadgrids=pt73_e89.gsb +no_defs'
where srid = 27492;

-- 27493 - Hayford-Gauss, Datum 73, IGP
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-223.237,110.193,36.649,0,0,0,0 +units=m +no_defs '--
update spatial_ref_sys
set proj4text = '+proj=tmerc +ellps=intl +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=180.598 +y_0=-86.990 +units=m +nadgrids=pt73_e89.gsb +no_defs'
where srid = 27493;

-- 20790 - Hayford-Gauss, Datum Lisboa, Militar
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=1 +k=1 +x_0=200000 +y_0=300000 +ellps=intl +towgs84=-304.046,-60.576,103.64,0,0,0,0 +pm=lisbon +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=200000 +y_0=300000 +ellps=intl +units=m +nadgrids=ptLX_e89.gsb +no_defs'
where srid = 20790;

-- 20791 - Hayford-Gauss, Datum Lisboa, IGP
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=1 +k=1 +x_0=0 +y_0=0 +ellps=intl +towgs84=-304.046,-60.576,103.64,0,0,0,0 +pm=lisbon +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=0 +y_0=0 +ellps=intl +units=m +nadgrids=ptLX_e89.gsb +no_defs'
where srid = 20791;

-- 23029 - UTM, ED50
-- Definição original
-- '+proj=utm +zone=29 +ellps=intl +towgs84=-87,-98,-121,0,0,0,0 +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=utm +ellps=intl +zone=29 +units=m +nadgrids=ptED_e89.gsb +no_defs'
where srid = 23029;

3 - Testar a configuração com alguns pontos de controlo (vértice geodésico ESPINHEIRA):

-------------------------------------
--Testar os métodos de transformação de coordenadas
--Vértice Geodésico ESPINHEIRA
--Coordenadas IGP:
-- Datum 73
-- x =  28999.924
-- y = -135387.053
-- Datum LX
-- x = 29001.15
-- y = -135386.57
-- PT-TM06
-- x = 29002.41
-- y = -135385.95

-- Datum 73 -> Datum LX
select ST_AsText(ST_Transform(ST_SetSRID(ST_Makepoint(28999.924,-135387.053), 27492), 20791));
-- Datum 73 -> PT-TM06
select ST_AsText(ST_Transform(ST_SetSRID(ST_Makepoint(28999.924,-135387.053), 27492), 3763));


Envio em anexo ficheiro SQL com as instruções para actualização da definição dos sistemas de coordenadas utilizados em Portugal (continente).


OBS: Em relação à solução apresentada pelo Pedro Duarte, no ficheiro excel os sistemas de coordenadas estão configurados com os códigos de identificação utilizados pela ESRI. O EPSG utiliza códigos diferentes (27493, 20790, 20791)


Cumprimentos,

Ricardo Sena


Email: [hidden email]logo_mini_wkt

Tlm: 912 287 483

Site: http://www.wkt.pt




2017-01-31 14:40 GMT+00:00 Ana Catarina Ferreira Pinheiro <[hidden email]>:
Olá boa tarde,

Estou na fase de testes para a transformação do sistema de coordenadas Datum73 para o ETRS89 pelo método das grelhas da DGT.
Alguém já fez essa transformação com os dados provenientes do Postgres/Postgis?

Ao falar com alguns colegas vimos que tenho de exportar para shape (por forma a levar o gid e não descodificar os caracteres), depois transformar as coordenadas com o ntv2 do Qgis e exportar novamente para postgis. Este método é sem dúvida moroso ainda por cima não estou a conseguir converter em bloco os layers de cada esquema para shapefile com o comando de converter formato do GDAL.

Alguém sabe alguma forma mais simples de proceder a esta transformação sem ser por estes passos todos? O ideal é ter um script para correr em postgis :)

Obrigada


--
Ana Catarina Pinheiro
Divisão de Planeamento, Ambiente e Gestão Urbanística - Informação Geográfica
Município de Vale de Cambra

email: [hidden email]
web : http://www.cm-valedecambra.pt
tel: <a href="tel:+351%20256%20420%20510" value="+351256420510" target="_blank">(+351)256 420 510

fax:<a href="tel:+351%20256%20420%20519" value="+351256420519" target="_blank">(+351)256 420 519



_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal


_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal

SQL_Setup_Spatial_Ref_Sys_Grelhas.sql (3K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Transformação de coordenadas no PostGis

Nuno Ferreira
Bom dia,

Efetuar o download das grelhas no formato NTv2 para a Transformação de Coordenadas dos Sistemas HGD73 para o Sistema PT-TM06/ETRS89 (http://www.dgterritorio.pt/cartografia_e_geodesia/geodesia/transformacao_de_coordenadas/grelhas_em_ntv2/)


 

Como proceder:

 

1-      No pgadmin -> public -> spatial_ref_sys - > Datum73 (27492 -> substituir o texto pelo seguinte: +proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.99 +ellps=intl +nadgrids=D73_ETRS89_geo.gsb +wktext +units=m +no_defs

 

2-      Colocar o ficheiro em anexo na pasta: Os ficheiros das grelhas (.gsb) dentro da pasta zip anexo) colocam-se na pasta utilizada pelo PROJ.4, cuja localização vai depender do Sistema Operativo utilizado:

a.       Em Linux, os ficheiros das grelhas colocam-se na pasta /usr/share/proj;

b.      Em Windows, tendo usado o instalador OSGeo4W, os ficheiros colocam-se na pasta..\OSGeo4W\share\proj ou (\Program Files\PostgreSQL\9.x\gdal-data);

d.      Uma outra alternativa é verificar a path da variável de ambiente PROJ_LIB e colocar os ficheiros nessa pasta.

 

3-      SQL para alterar sistema de coordenadas:      ALTER TABLE esquema.tabela ALTER COLUMN the_geom TYPE geometry(Point, 3763) USING ST_Transform(the_geom, 3763); (Definir esquema,tabela e o tipo de geometria, de seguida correr e está).


Nuno Ferreira

Sistemas de Informação Geográfica

Município de Tavira


Em 31 de janeiro de 2017 15:34, Ricardo Sena <[hidden email]> escreveu:
Boa tarde,


Para além da solução apresentada pelo Pedro Duarte, outra forma de fazer essa configuração pode ser através da seguinte forma:

1 - Copiar os ficheiros das grelhas (*.gsb) para a directoria C:\Program Files\PostgreSQL\9.4\share\contrib\postgis-2.2\proj (neste caso para uma instalação em windows; a path pode variar em função do local de instalação dos Postgres)

2 - Actualizar as definições dos sistemas de coordenadas da base de dados (na tabela spatial_ref_sys). Instruções de SQL (executar através do pgAdmin):

----------------------------------------------------------------------------
--Grelhas
-- Actualização dos sistemas de coordenadas para fazer trasnformação através do método das grelhas

-- 27492 - Hayford-Gauss, Datum 73, IGP
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-223.237,110.193,36.649,0,0,0,0 +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=tmerc +ellps=intl +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=180.598 +y_0=-86.990 +units=m +nadgrids=pt73_e89.gsb +no_defs'
where srid = 27492;

-- 27493 - Hayford-Gauss, Datum 73, IGP
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-223.237,110.193,36.649,0,0,0,0 +units=m +no_defs '--
update spatial_ref_sys
set proj4text = '+proj=tmerc +ellps=intl +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=180.598 +y_0=-86.990 +units=m +nadgrids=pt73_e89.gsb +no_defs'
where srid = 27493;

-- 20790 - Hayford-Gauss, Datum Lisboa, Militar
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=1 +k=1 +x_0=200000 +y_0=300000 +ellps=intl +towgs84=-304.046,-60.576,103.64,0,0,0,0 +pm=lisbon +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=200000 +y_0=300000 +ellps=intl +units=m +nadgrids=ptLX_e89.gsb +no_defs'
where srid = 20790;

-- 20791 - Hayford-Gauss, Datum Lisboa, IGP
-- Definição original
-- '+proj=tmerc +lat_0=39.66666666666666 +lon_0=1 +k=1 +x_0=0 +y_0=0 +ellps=intl +towgs84=-304.046,-60.576,103.64,0,0,0,0 +pm=lisbon +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1.000000 +x_0=0 +y_0=0 +ellps=intl +units=m +nadgrids=ptLX_e89.gsb +no_defs'
where srid = 20791;

-- 23029 - UTM, ED50
-- Definição original
-- '+proj=utm +zone=29 +ellps=intl +towgs84=-87,-98,-121,0,0,0,0 +units=m +no_defs '
update spatial_ref_sys
set proj4text = '+proj=utm +ellps=intl +zone=29 +units=m +nadgrids=ptED_e89.gsb +no_defs'
where srid = 23029;

3 - Testar a configuração com alguns pontos de controlo (vértice geodésico ESPINHEIRA):

-------------------------------------
--Testar os métodos de transformação de coordenadas
--Vértice Geodésico ESPINHEIRA
--Coordenadas IGP:
-- Datum 73
-- x =  28999.924
-- y = -135387.053
-- Datum LX
-- x = 29001.15
-- y = -135386.57
-- PT-TM06
-- x = 29002.41
-- y = -135385.95

-- Datum 73 -> Datum LX
select ST_AsText(ST_Transform(ST_SetSRID(ST_Makepoint(28999.924,-135387.053), 27492), 20791));
-- Datum 73 -> PT-TM06
select ST_AsText(ST_Transform(ST_SetSRID(ST_Makepoint(28999.924,-135387.053), 27492), 3763));


Envio em anexo ficheiro SQL com as instruções para actualização da definição dos sistemas de coordenadas utilizados em Portugal (continente).


OBS: Em relação à solução apresentada pelo Pedro Duarte, no ficheiro excel os sistemas de coordenadas estão configurados com os códigos de identificação utilizados pela ESRI. O EPSG utiliza códigos diferentes (27493, 20790, 20791)


Cumprimentos,

Ricardo Sena


Email: [hidden email]logo_mini_wkt

Tlm: 912 287 483

Site: http://www.wkt.pt




2017-01-31 14:40 GMT+00:00 Ana Catarina Ferreira Pinheiro <[hidden email]>:
Olá boa tarde,

Estou na fase de testes para a transformação do sistema de coordenadas Datum73 para o ETRS89 pelo método das grelhas da DGT.
Alguém já fez essa transformação com os dados provenientes do Postgres/Postgis?

Ao falar com alguns colegas vimos que tenho de exportar para shape (por forma a levar o gid e não descodificar os caracteres), depois transformar as coordenadas com o ntv2 do Qgis e exportar novamente para postgis. Este método é sem dúvida moroso ainda por cima não estou a conseguir converter em bloco os layers de cada esquema para shapefile com o comando de converter formato do GDAL.

Alguém sabe alguma forma mais simples de proceder a esta transformação sem ser por estes passos todos? O ideal é ter um script para correr em postgis :)

Obrigada


--
Ana Catarina Pinheiro
Divisão de Planeamento, Ambiente e Gestão Urbanística - Informação Geográfica
Município de Vale de Cambra

email: [hidden email]
web : http://www.cm-valedecambra.pt
tel: <a href="tel:+351%20256%20420%20510" value="+351256420510" target="_blank">(+351)256 420 510

fax:<a href="tel:+351%20256%20420%20519" value="+351256420519" target="_blank">(+351)256 420 519



_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal


_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal


_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal
Reply | Threaded
Open this post in threaded view
|

Re: Transformação de coordenadas no PostGis

catarina
In reply to this post by catarina
Olá!!

Muito obrigada pelas rápidas respostas que foram sem dúvida proveitosas :)

Vou testar a solução do Ricardo Sena, mas decidi em primeiro lugar criar uma máquina virtual com o hardware e software que pretendo actualizar no servidor e efectuar os testes nessa máquina. Mal tenha os resultado publicarei aqui ;)

Muito obrigada a todos,

--
Ana Catarina Pinheiro
Divisão de Planeamento, Ambiente e Gestão Urbanística - Informação Geográfica
Município de Vale de Cambra
email: [hidden email]
web : http://www.cm-valedecambra.pt
tel: (+351)256 420 510
fax:(+351)256 420 519

_______________________________________________
Portugal mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/portugal