Transformação de coordenadas cartográficas

= OBSOLETE  See: http://qgis.pt/blog/2014/07/13/transformacao-de-coordenadas-e-utilizacao-das-grelhas-ntv2-no-qgis/ and http://qgis.pt/plugins.html=

= Transformação de coordenadas cartográficas de e para o novo sistema pt-tm06 =

Fonte: Ricardo Pinho (http://gisvm.com/forum/index.php?topic=38.0)
http://www.igeo.pt/produtos/Geodesia/Inf_tecnica/sistemas_referencia/Datum_ETRS89.htm
 * PT-MT06, baseado no ETRS89 e indicado pelo IGP para novo Sistema de Coordenadas Cartográficas Oficial Português:

http://www.fc.up.pt/pessoas/jagoncal/coordenadas/
 * Página do Prof. José Alberto Gonçalves, da Faculdade de Ciências da Universidade do Porto, que propõe a transformação de coordenadas pelo método das Grelhas.


 * Ferramentas utilizadas: CS2CS e OGR2OGR, que se podem encontrar no pacote fwtools ou directamente instaladas com as bibliotecas Proj.4 e OGR

DESCRIÇÃO DOS UTILITÁRIOS CS2CS e OGR2OGR

 * CS2CS, é um comando para usar em linhas de comandos (terminal/consola) que permite a conversão de coordenadas de um ponto ou conjunto de pontos (num ficheiro) entre dois sistemas de coordenadas indicados (Coordinate System).


 * OGR2OGR, é um comando para usar em linhas de comandos (terminal/consola) que permite a conversão de uma diversidade grande de formatos vectoriais abrangidos pela biblioteca OGR. Vamos aqui detalhar a possibilidade de o utilizar para conversão de coordenadas no mesmo formato, nomeadamente o formato Shape (ESRI).

A transformação de coordenadas em ambos os comandos é feita com base na biblioteca PROJ.4, utilizada por grande maioria do software FOSS4G (Free Open Source Software for Geospatial).

DEFINIÇÕES DE COORDENADAS CARTOGRÁFICA NO PROJ4
Embora exista a possibilidade de utilizar para Portugal Continental as definições de coordenadas definidas na lista universal do EPSG no proj4, sugere-se que se utilizem os seguintes parâmetros específicos para as definições dessas coordenadas cartográficas:

http://www.igeo.pt/produtos/Geodesia/Inf_tecnica/sistemas_referencia/Datum_73.htm
 * [D73HG] HAYFORD-GAUSS DATUM 73

+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-239.749,88.181,30.488,0.263,0.082,1.211,2.229

http://www.igeo.pt/produtos/Geodesia/Inf_tecnica/sistemas_referencia/Datum_Lx.htm
 * [DLXHG] HAYFORD-GAUSS DATUM LISBOA (IGP)

+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=0 +y_0=0 +ellps=intl +towgs84=-288.885,-91.744,126.244,-1.691,0.410,-0.211,-4.598

+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=200000 +y_0=300000 +ellps=intl +towgs84=-288.885,-91.744,126.244,-1.691,0.410,-0.211,-4.598
 * [DLXHGMIL] HAYFORD-GAUSS DATUM LISBOA (Militar)

http://www.igeo.pt/produtos/Geodesia/Inf_tecnica/sistemas_referencia/Datum_ETRS89.htm
 * [PTTM06] PT-TM06 do datum ETRS89

+proj=tmerc +lat_0=39.6682583333333 +lon_0=-8.13310833333333 +ellps=GRS80 +towgs84=0,0,0

DEFINIÇÕES DE COORDENADAS PELO METODO DAS GRELHAS (Prof. José Alberto Gonçalves)
As definições das transformações de coordenadas pelo método das grelhas obriga a utilização de um conjunto de ficheiros (grelhas.zip) disponibilizados pelo Prof. José Alberto Gonçalves na sua página:

http://www.fc.up.pt/pessoas/jagoncal/coordenadas/

Para aplicar esta metodologia é necessário descarregar o ficheiro grelhas.zip que contem a definição dos seguintes Sistemas de Coordenadas.

conforme ao sistema operativo usado é necessário descompactar os ficheiros de definição na pasta com as definições padrão da biblioteca Proj, em um sistema GNU/linux esta pasta é tipicamente

/usr/share/proj

CS2CS - CONVERSÃO DE PONTOS
A utilização deste comando é efectuada com a seguinte sintaxe simplificada (ponto a ponto):

cs2cs  +to  [enter]

  [enter] (dados das coordenadas do ponto)

X Y Z (resultados da transformação de coordenadas)

Como exemplo vou converter as coordenadas do vértice Geodésico de PATAIS, cujas coordenadas oficiais são:

88	PATAIAS	         1	-74583,460  2462,139  -74584,120  2459,620  -74582,612	2460,852
 * 1) 	Vértice Geodésico Ordem	X-HG73	   Y-HG73    X-HGLX	  Y-HGLX    X-TM06	Y-TM06

OPÇÃO 1. Converter de DATUM 73 para PT-TM06 utilizando transformação BursaWolf de 7 parâmetros:
+x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-231.03,102.61,26.84,0.61,-0.20,0.88,1.79 +to +proj=tmerc +lat_0=39.6682583333333 +lon_0=-8.13310833333333 +ellps=GRS80 +towgs84=0,0,0
 * 1) cs2cs +proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1


 * 1) -74583.460  2462.139


 * 1) -74582.96   2460.61    54.41 (resultado).

Nota: Interessa-nos aqui apenas a transformação planimétrica pelo que deve ser ignorada a cota resultante (54.41m)

OPÇÃO 2. Converter de DATUM 73 para PT-TM06 utilizando transformação pelo método das grelhas:

 * 1) cs2cs +init=pt:d73hg +to +init=pt:pttm06


 * 1) -74583.460 2462.139


 * 1) -74582.61   2460.81 0.00 (resultado)

OGR2OGR - CONVERSÃO DE FICHEIROS SHAPE
Tendo por exemplo como dados o ficheiro shape da CAOP versão 2008.1 fornecido pelo IGP exclusivamente no sistema de coordenadas PT-MT06. Vamos converte-lo para Datum 73 utilizado o OGR2OGR. O ficheiro shape pode ser obtido em: http://www.igeo.pt/produtos/cadastro/caop/download/CAOP2008_1_Shapes/Cont_Freg_CAOP20081_pol.zip

OPÇÃO 1. Converter de PT-TM06 para DATUM 73 utilizando transformação BursaWolf de 7 parâmetros:
+lat_0=39.6682583333333 +lon_0=-8.1331083333333" -t_srs "+proj=tmerc +lat_0=39.66666666666666 +lon_0=-8.131906111111112 +k=1 +x_0=180.598 +y_0=-86.98999999999999 +ellps=intl +towgs84=-239.749,88.181,30.488,0.263,0.082,1.211,2.229" Cont_Freg_CAOP20081_pol_d73hg_bw7.shp Cont_Freg_CAOP20081_pol.shp
 * 1) ogr2ogr -f "ESRI Shapefile" -s_srs "+proj=tmerc +ellps=GRS80 +towgs84=0,0,0

E resulta numa shape file (4 ficheiros) com nome: “Cont_Freg_CAOP20081_pol_d73hg_bw7”

OPÇÃO 2. Converter de PT-TM06 para DATUM 73 utilizando transformação pelo método das grelhas:

 * 1) ogr2ogr -f "ESRI Shapefile" -s_srs "+init=pt:pttm06 +wktext" -t_srs "+init=pt:d73hg +wktext" Cont_Freg_CAOP20081_pol_d73hg_grid.shp Cont_Freg_CAOP20081_pol.shp

E resulta numa shape file (4 ficheiros) com nome: “Cont_Freg_CAOP20081_pol_d73hg_grid”