:: Aprende a convertir
coordenadas geográficas en UTM y UTM en geográficas ::

A lo largo de los
últimos meses he recibido decenas de correos electrónicos
solicitando una fuente de información donde se pudiera aprender
cómo convertir coordenadas geográficas-geodésicas en UTM y
viceversa. En el foro ya se trató este tema y se dieron diversas
referencias bibliográficas, pero lo cierto es que en la red no es
fácil localizar ejemplos de desarrollo explicados. Aprovechando que por
razones profesionales he tenido que volver a repasar este tema, intentaré
crear yo mismo un texto claro y con ejemplos.

Muchas de las preguntas
proceden de programadores que quieren localizar un algoritmo para realizar el
proceso sin necesidad de saber casi nada de cartografía o geodesia. Este
texto tratará de ser útil para esas personas, explicando
cómo realizar todo el proceso necesario para llegar a programar un
conversor siguiendo los pasos (todos ellos bien documentados) que a
continuación siguen. El
objetivo de este texto es, por tanto, que todo el mundo al final de la lectura
sea capaz de convertir por sí mismo sus coordenadas. El
problema del traslado de datum o cambio de datum no se
abordará en este texto, sino sólo el proceso de
transformación de geodésicas en UTM y de UTM en
geodésicas. Esto implica que las coordenadas geodésicas y UTM han
de estar referidas al mismo elipsoide. No obstante, para aprender a realizar el
cambio de datum (que es un problema bastante
más extenso), el lector puede consultar este
artículo donde se explica el procedimiento de cambio de datums en profundidad.

Para mayor claridad de
exposición, he incluido una hoja
de cálculo en formato Microsoft® Excel con la implementación
de los procedimientos descritos al final del artículo.
En ella se pueden introducir coordenadas y ver cómo se calculan los
diversos parámetros y la solución final, tanto en el problema
directo (geográficas a UTM) como en el problema inverso (UTM a
geográficas). Creo que la
hoja Excel es la forma más apropiada de demostrar la
implementación del procedimiento, puesto que permite entender el proceso
de cálculo sin necesidad de entender ningún lenguaje de
programación. También he incluido al final del artículo un
documento en formato PDF
con las ecuaciones y los ejemplos realizados paso a paso; dado el tamaño
de las ecuaciones y los ejemplos, este documento ha de ser impreso en
tamaño A1 con un plotter.

Si vas a hacer un uso comercial del contenido,
realiza una donación voluntaria al proyecto en http://recursos.gabrielortiz.com/donaciones.htm.
Si el
contenido del texto te resulta útil y te ayuda a aprender, te pido que
cites esta página web en tu trabajo.

Entrando ya en contenido,
hay que decir que para traducir coordenadas geográficas en UTM y
viceversa existen diversos procedimientos. De entre ellos yo destacaría
tres métodos como los más utilizados:

Utilizando las tablas de la Proyección UTM.
Dichas tablas
están incluidas, entre otras, en la siguiente publicación:
Servicio Geográfico del Ejército de España (SGE),
Sección de Geodesia (1976): Proyección Universal Tranversa
Mercator, SGE, Madrid. Consta de dos
volúmenes: Vol. I: Sistemas
conformes. Proyección U.T.M.
Cuadrículas y Sistemas de referencia, (220 pp.) y Vol.
II: Tablas, (331 pp.)

Utilizando las fórmulas de transformación directa del US Army, publicadas en 1973 (véase
el USGS Bolletin
Num. 1532).

Utilizando las fórmulas de Coticchia-Surace, que para mi gusto es el
método más fácil de programar. Dichas ecuaciones
fueron planteadas por Alberto Cotticia y Luciano
Surace en el
“Bolletino di Geodesia e Science Affini”,
Num. 1, y a ellos debemos la deducción de las ecuaciones que vamos a utilizar en este
artículo. La precisión que se puede obtener
ronda el centímetro cuando se utilizan suficientes decimales. En
consecuencia, es imperativo que a la hora de programar utilicemos
variables de coma flotante y doble precisión.

Para entender mejor la
aplicación de las ecuaciones de Cotticchia-Surace, realizaremos un ejemplo con los datos del
vértice de Llatías (que está
cerca de mi casa) sobre el elipsoide de Hayford
(también llamado Internacional de 1924).

A continuación
iniciamos el proceso de conversión de coordenadas, explicando primero el
paso de coordenadas geográficas a UTM (problema directo), y
posteriormente el paso de coordenadas UTM a geográficas (problema
inverso).

1. CONVERSIÓN DE
GEOGRÁFICAS A UTM (PROBLEMA DIRECTO).

Partimos en primer lugar de
las coordenadas geográficas-geodésicas del vértice con el
que haremos el ejemplo, que como he dicho antes es el vértice de Llatías. Los datos de este vértice
están en principio en geodésicas sobre el elipsoide de Hayford (también llamado Internacional de 1909 o
Internacional de 1924). Dichas coordenadas son las siguientes:

También vamos a
necesitar los datos básicos de la geometría del elipsoide de Hayford. Cuando digo datos básicos me refiero al
semieje mayor (a) y al semieje menor (b). A partir de estos datos, aprenderemos
a deducir otros parámetros de la geometría del elipsoide que nos
harán falta en el proceso de conversión de coordenadas.
Así, los datos referentes a los semiejes del elipsoide Hayford son:

Con estos datos ya podemos
empezar a operar. En negro se indicarán las ecuaciones originales y en
azul los datos correspondientes al desarrollo del ejemplo. Procederemos con las
siguientes etapas:

1.1.
Cálculos previos:

1.1.1. Sobre la
geometría del elipsoide.

1.1.2. Sobre la longitud y la latitud.

1.1.3. Sobre el huso.

1.2. Ecuaciones de Cotticchia-Surace:

1.2.1. Cálculo de
parámetros.

1.2.2. Cálculo final de coordenadas.

1.1. Cálculos Previos.

1.1.1. Sobre la Geometría del Elipsoide:

Calculamos la
excentricidad, la segunda excentricidad, el radio polar de curvatura y el
aplanamiento:

Aprovechamos para calcular
también el cuadrado de la segunda excentricidad, pues nos hará
falta en muchos pasos posteriores:

Seguimos con el radio polar
de curvatura y el aplanamiento:

En realidad, el
aplanamiento y la excentricidad (la primera excentridad),
no son necesarios para la aplicación de las ecuaciones de Coticchia-Surace, pero las he
incluido porque frecuentemente los parámetros del elipsoide se dan como
el semieje mayor (a) y el
aplanamiento (alfa), o bien
como el semieje mayor (a) y la
excentricidad (e). En estas
circunstancias, conociendo las correspondientes fórmulas
podríamos también calcular el parámetro del semieje menor
(b).

1.1.2. Sobre la Longitud y la Latitud:

Lo primero que hacemos es
convertir los grados sexagesimales (grados, minutos y segundos) a grados
sexagesimales expresados en notación decimal (lo que se suele denominar
normalmente "grados decimales"). Para ello operamos de la siguiente
forma:

Una vez que tenemos la
longitud y la latitud en grados decimales, procedemos a su paso a radianes,
pues la mayor parte de los pasos posteriores se realizarán con entrada
de datos en radianes. Operamos para ello de la forma:

El siguiente paso es
calcular el signo de la
longitud. Para ello el proceso lógico es muy sencillo:

1.1.3. Sobre el Huso:

Una vez tenemos preparados
los datos de longitud y latitud, podemos calcular el huso o zona UTM (UTM Zone)
donde caen las coordenadas a convertir, con operaciones muy sencillas:

Con el huso ya conocido, el siguiente paso es obtener
el meridiano central de dicho huso. El meridiano central es la línea de
tangencia del cilindro transverso.

Pero antes de seguir con
los cálculos e introducir más conceptos, vamos a repasar algunos
de los elementos principales de la proyección
UTM. Así, conviene recordar que en la proyección UTM
el cilindro transverso que se usa como superficie desarrollable, se va girando
virtualmente para definir los diferentes husos (60) que rodean la tierra.

Se empiezan a contar los
husos por el antimeridiano de Greenwich y por eso la
parte central de España cae en el huso 30, por estar en el lado opuesto
del inicio de la numeración de husos, que queda al otro lado de la
tierra.

El meridiano central del
huso es muy importante porque es el origen de las coordenadas X. Como el
meridiano central dejaría la parte del huso situada a su izquierda con
coordenadas X negativas, para evitar eso, se suma a todas las coordenadas X la
cantidad de 500.000. Esto hace que no existan valores negativos para las
coordenadas X, puesto que se ha realizado un retranqueo del eje X de 500 km.

Y algo semejante se hace
para los valores de Y, cuyo origen es el ecuador. Como el ecuador está
normalmente más lejos que el meridiano central del huso, las coordenadas
Y suelen tener un guarismo más (en el caso de España, las Y son
mayores que 4 millones). Si el ecuador es el origen de las Y, toda la parte
situada al sur del mismo tendría coordenadas negativas. Para evitar eso,
se suma el valor 10.000.000
a los valores de Y, pero sólo en el caso de que
se trate de coordenadas pertenecientes al hemisferio sur; si las coordenadas
pertenecen al hemisferio norte, no se tocan los valores Y.

Volviendo con el meridiano
central del huso, éste también tiene la particularidad de que es automecoico. En teoría, para cualquier latitud que
caiga dentro del rango de operación de la proyección UTM
(intervalo entre los 84° N y los 80° S), el punto de menor
deformación de la
proyección UTM es el que para esa latitud se
sitúa sobre el meridiano central de su correspondiente huso. En la
práctica esto no es del todo cierto, pues la proyección UTM
aplica un factor de escala (0,9996) que hace que las zonas de menor
deformación pasen a ser las situadas a ± 2° 15'
(aproximadamente a 180 km del meridiano central, aunque
esta medida varía con la latitud); son las llamadas líneas
isométricas, derivadas de la aplicación de este factor de escala
(denominado K0) que es una de las principales
diferencias entre la
Proyección UTM y la Proyección
Gauss-Krüger, en la que se
basa la UTM en su totalidad.

Expuestos estos conceptos,
para saber mínimamente lo que estamos
calculando, vamos a retomar los cálculos donde los habíamos
dejado. Habíamos dicho que el siguiente paso es obtener el meridiano
central del huso en el que caen las coordenadas geodésicas sobre las que
operamos. La operación es muy sencilla:

Ahora calculamos la
distancia angular que existe entre la longitud del punto con el que operamos y
el meridiano central del huso (véase la figura anterior). Es muy
importante señalar que ambos datos tienen que ser introducidos en
radianes. La longitud ya la habíamos traducido a radianes antes, pero no
así el valor del meridiano central que acabamos de calcular. Para
convertirlo a radianes multiplicamos por Pi y dividimos por 180:

1.2. Ecuaciones de Coticchia-Surace para el Problema Directo (Paso de Geográficas
a UTM).

1.2.1. Cálculo de Parámetros:

A continuación
debemos calcular una serie de parámetros que van encadenados unos a
otros y que son el núcleo de las ecuaciones de Coticchia-Surace. Son muchas operaciones pero vereis
que el proceso es muy rutinario y fácilmente programable:

1.2.2. Cálculo Final de Coordenadas:

Una vez disponemos de todos
los parámetros anteriores calculados, procedemos a la solución de
las coordenadas UTM finales, de la forma:

Para el caso de la
solución de Y es muy importante recordar que si la latitud de las coordenadas geodésicas
con las que operamos pertenece al hemisferio sur deberemos sumar el valor
10.000.000 al resultado obtenido. Como en el caso del ejemplo
estamos operando con latitudes al norte del Ecuador, no realizamos tal
operación:

:: Aprende a convertir
coordenadas geográficas en UTM y UTM en geográficas (Parte II) ::

2. CONVERSIÓN DE
UTM A GEOGRÁFICAS (PROBLEMA INVERSO).

Para realizar el
procedimiento inverso, partimos de las coordenadas UTM del vértice de Llatias, con el que estamos trabajando. Dichas coordenadas
UTM siguen estando sobre el elipsoide de Hayford y
son las siguientes:

Vemos que las coordenadas
de partida difieren muy ligeramente en los decimales de centímetro de
los valores calculados anteriormente. Estas pequeñas diferencias, son
normales en el proceso de cálculo, puesto que las ecuaciones de Coticchia-Surace no son sino una
aproximación muy fidedigna a la solución real de la proyección UTM.
Estas variaciones son mínimas para la mayor parte de
las aplicaciones, pues ya dijimos que utilizando suficientes números
decimales se puede llegar a conseguir precisiones entorno al centímetro
en la conversión.

Iniciamos el proceso de
conversión recurriendo de nuevo a los datos básicos de la
geometría del elipsoide de Hayford (semieje
mayor y semieje menor):

Procedemos con las
siguientes etapas:

2.1.
Cálculos previos:

2.1.1. Sobre la
geometría del elipsoide.

2.1.2. Tratamiento previo de X e Y.

2.1.3. Cálculo del meridiano central del huso.

2.2. Ecuaciones de Cotticchia-Surace:

2.2.1. Cálculo de
parámetros.

2.2.2. Cálculo final de coordenadas.

Los cálculos
relativos a la geometría del elipsoide son exactamente los mismos que
los descritos en el punto 1.1.1 de este artículo, puesto que
también son necesarios en el problema inverso. No obstante, serán
repetidos para mayor claridad expositiva. En cuanto al resto de
parámetros, son parecidos a lo ya visto.

2.1. Cálculos Previos.

2.1.1. Sobre la Geometría del Elipsoide:

Calculamos la
excentricidad, la segunda excentricidad, el radio polar de curvatura y el
aplanamiento:

Aprovechamos para calcular
también el cuadrado de la segunda excentricidad, pues nos hará
falta en muchos pasos posteriores:

Seguimos con el radio polar
de curvatura y el aplanamiento:

Como ya dijimos
anteriormente, el aplanamiento y la excentricidad (la primera excentridad) no son necesarios para la aplicación de
las ecuaciones de Coticchia-Surace.

2.1.2. Tratamiento Previo de X e Y:

Empezamos eliminando el
retranqueo del eje de las X, que se realiza en todos los casos:

Para las Y, la
eliminación del retranqueo es selectiva y sólo se realiza en el
caso de que estemos operando con coordenadas UTM correspondientes al hemisferio
sur. Por tanto:

Como en el caso del ejemplo
operamos con coordenadas del hemisferio norte, Y no se modifica y sigue
valiendo lo mismo.

2.1.3. Cálculo del Meridiano Central del
Huso:

Debemos conocer el huso UTM
(o Zona UTM) al que pertenecen las coordenadas a convertir, como otro
parámetro más involucrado en la conversión. El
modo de operación para el cálculo del meridiano central del huso
es igual que en el problema directo:

2.2. Ecuaciones de Coticchia-Surace para el Problema Inverso (paso de UTM a
Geográficas).

2.2.1. Cálculo de Parámetros:

La mayor parte de los
parámetros se calculan de forma muy similar o incluso igual a lo ya
visto anteriormente para el problema directo:

2.2.2. Cálculo Final de Coordenadas:

La composición de la
longitud es muy sencilla. El único cuidado que hay que poner es que la
operación ha de ser realizada en grados decimales, por lo que delta lambda ha de ser dividida por Pi y
multiplicada por 180. Lambda sub cero ya está en grados decimales,
por lo que no hace falta tocarla. La longitud se obtiene de la forma:

La composición de la
latitud es un poco más complicada:

Ahora nos queda pasar a
grados decimales la latitud, que la tenemos en radianes:

Una vez que tenemos la
longitud y la latitud en grados sexagesimales en notación decimal, lo
que nos queda es pasar el resultado a grados, minutos y segundos sexagesimales:

Vemos que la longitud nos
queda con valores negativos lo cual es lo mismo que decir que dicha longitud
corresponde al oeste del meridiano de Greenwich.

3. CONVERSOR DE
COORDENADAS EN HOJA DE CÁLCULO EXCEL.

He creado una hoja de cálculo con la
implementación de las fórmulas comentadas. Esta hoja, realizada
en formato Microsoft® Excel, permite ver cómo se van calculando
todos los parámetros en cadena cuando se introducen unas determinadas
coordenadas a convertir.

En ella se puede
experimentar tanto con el problema directo como el inverso. También se
pueden seleccionar diferentes tipos de elipsoides (entre ellos WGS84 y GRS80),
pues he incorporado una pequeña lista de los más comunes con sus
parámetros de semieje mayor (a)
y semieje menor (b). A partir
de estos valores se van calculando el resto de los parámetros de la
geometría del elipsoide elegido. También es posible definir
nuevos elipsoides por parte del usuario.

En esta versión de
la hoja de cálculo no es posible realizar conversiones entre datums. Para aprender a realizar el cambio de datum (que es un proceso más extenso), se puede
consultar este artículo donde se describe en profundidad el
procedimiento de conversión de datum y
también se adjunta una hoja de cálculo completa.

Descarga la hoja de cálculo conversora de coordenadas (sin cambio de datum)

En la sección de
descargas de esta web tienes también un ejecutable
con otra implementación de estas mismas ecuaciones que programé
allá por 1994. A
veces da algunos problemas con los sistemas operativos nuevos (está
programado con Quick Basic en MS-DOS).

Por último, termino
como empecé: pidiéndote que si el contenido de este artículo te ha resultado útil y
te ha ayudado a aprender, te pido que cites esta página web en tu trabajo. Si el contenido te sirve
para una aplicación comercial
realiza una donación voluntaria en http://recursos.gabrielortiz.com/donaciones.htm.
Para cualquier comentario, puedes encontrarme en [email-masked].