Actualmente, la fórmula que estoy utilizando para convertir MGRS a Lat/Long y viceversa me está dando resultados ligeramente diferentes a la mayoría de otras utilidades de conversión. Suele estar entre 10 y 30 pies de diferencia. Esto no es una gran diferencia, pero es importante para la aplicación particular de los datos. Me pregunto si alguien conoce alguna biblioteca simple que haga conversiones entre MGRS y Lat/Long o UTM.
Respuestas
¿Demasiados anuncios?http://www.ngs.noaa.gov/TOOLS/usng.shtml
que también se puede descargar (incluido el código FORTRAN). USNG es una versión simplificada de MGRS. El datum suele ser NAD83 y no tienes que manejar el diferente esquema de letras basado en el datum/elipsoide. En MGRS, los datos de NAD27 tendrían un esquema de letras diferente a NAD83.
Geotrans 3.0
http://earth-info.nga.mil/GandG/geotrans/index.html
que está en C o Java y también tiene disponible el código fuente.
Te recomendaría que utilices la biblioteca USNG para convertir
LL a USNG (función LLtoUSNG(lat, lon, precisión))
LL a MRGS (función LLtoMGRS(lat, lon, precisión))
LL a UTM (Nota: Los cálculos UTM son un paso intermedio en las conversiones de LLtoUSNG pero se pueden utilizar como una función separada si es necesario)
y más, además de reversa