<trkpt lat="40.8282234" lon="-3.8302293">
<ele>1643.0302734</ele>
<time>2011-10-09T07:57:34Z</time>
</trkpt>
Nueva versión de esta conversión:
Es conveniente tener instalado y ver los resultados de la conversión con OpenOffice.
Funciones utilizadas:
Entero()
Espacios()
Texto
Uso de nombres.
De texto a datos.
El primer paso es pasar los datos del fichero de texto a la hoja excel, solo los datos, sin cabecera. En este caso lo hice con un copia-pega, aunque quizas debí importar esos datos directamente desde el fichero de texto. Una vez todos los datos en la columna A los pasé, mediante la opción de texto a datos, cada uno a su columna. Además los pase todos ellos como campo tipo texto con el fin de hacer las cosas paso a paso.
Las coordenadas, campos 1 y 2 (columnas A y B) se van a utilizar tal cual están, números separados por punto. La altura se tiene que pasar de pies a metros (aprox. pies*o,28). Esta multiplicación es una aproximación por lo que en el resultado podemos redondear, prescindir de los decimales. El primer campo fecha (considerado texto), números separados por un punto, hay que pasarlo a numérico (en notación española, en mi caso). Utilizo para ello la opción de texto en columnas, primero selecciona la columna a convertir,Datos->Texto en columnas, como solo es una columna, Ancho fijo, avanzamos hasta el paso tres y pulsamos el botón Avanzadas. Cambiamos para el separador decimal la coma por el punto y para el separador de miles el punto por la coma. Damos destino a ese cambio (el resultado puede sustituir a los datos originales) y ya tenemos el dato convertido a numérico. Calculo la altitud en metros, redondeo y coloco las etiquetas correspondientes (k) con :
="<ele>" & ENTERO(I2*PM) & "</ele>"
A la fecha con formato GPX y sus correspondientes etiquetas le doy forma (L) con la función texto y el formato de fecha correspondiente:
="<time>" & TEXTO(J2;"aaaa-mm-ddThh:mm:ssZ") & "</time>"
Las coordenadas y sus etiquetas son la cocatenación de valores de texto.
El punto completo de GPX incluye saltos de línea. Los saltos de línea son los códigos ASCII 13 (CR) y 10 (LF), retorno de carro y avance de línea de las ya muy antiguas (casi olvidadas) máquinas de escribir. Según el editor de textos que se utilice se puede notar la diferencia, o no. Se pueden encontrar ficheros de texto con ambos caracteres al final de la línea , o con uno solo de ellos. Realmente no suele dar problemas, salvo la aparición de líneas en blanco.
Para utilizar comodamente los caracteres que necesito incluir mediante la funcion CARACTER(), les doy nombre (insertar->Nombre->definir):
CR =CARACTER(13)
LF=CARACTER(10)
CRLF=Cr & LF
COM (de comillas) =CARACTER(34)
PM (de pies a metros) =0,28
En las columnas con los puntos completos los utilizo:
=$M2 & CRLF& $K2 & CRLF& $L2 & CRLF& "</trkpt>"
Para poder utilizar estos datos en un fichero GPX editamos un fichero GPX con cabera y cola, copiamos (sin la cabecera o título de la columna excel) y pegamos los puntos en el sitio correspodiente del fichero GPX y ya (si lo hacemos bien) podemos utilizarlo, por ejemplo, en MapSource. Esta copia se hace mejor abriendo el fichero XLS con Open Ofice y los ficheros de texto con WordPad.
Ficheros GPX preparados.
="<ele>" & ENTERO(I2*PM) & "</ele>"
A la fecha con formato GPX y sus correspondientes etiquetas le doy forma (L) con la función texto y el formato de fecha correspondiente:
="<time>" & TEXTO(J2;"aaaa-mm-ddThh:mm:ssZ") & "</time>"
Las coordenadas y sus etiquetas son la cocatenación de valores de texto.
El punto completo de GPX incluye saltos de línea. Los saltos de línea son los códigos ASCII 13 (CR) y 10 (LF), retorno de carro y avance de línea de las ya muy antiguas (casi olvidadas) máquinas de escribir. Según el editor de textos que se utilice se puede notar la diferencia, o no. Se pueden encontrar ficheros de texto con ambos caracteres al final de la línea , o con uno solo de ellos. Realmente no suele dar problemas, salvo la aparición de líneas en blanco.
Para utilizar comodamente los caracteres que necesito incluir mediante la funcion CARACTER(), les doy nombre (insertar->Nombre->definir):
CR =CARACTER(13)
LF=CARACTER(10)
CRLF=Cr & LF
COM (de comillas) =CARACTER(34)
PM (de pies a metros) =0,28
En las columnas con los puntos completos los utilizo:
=$M2 & CRLF& $K2 & CRLF& $L2 & CRLF& "</trkpt>"
Para poder utilizar estos datos en un fichero GPX editamos un fichero GPX con cabera y cola, copiamos (sin la cabecera o título de la columna excel) y pegamos los puntos en el sitio correspodiente del fichero GPX y ya (si lo hacemos bien) podemos utilizarlo, por ejemplo, en MapSource. Esta copia se hace mejor abriendo el fichero XLS con Open Ofice y los ficheros de texto con WordPad.
Ficheros GPX preparados.
No hay comentarios:
Publicar un comentario