Convertidor de KML de Google a GeoJSON
La conversión de archivos KML de Google a GeoJSON transforma datos geográficos XML jerárquicos en Notación de Objetos de JavaScript (JSON) vectorial ligera para mapas web modernos.
Comparativa de formatos y especificaciones técnicas
| Especificación | KML | GEOJSON |
|---|---|---|
| Tipo MIME | application/vnd.google-earth.kml+xml | application/geo+json |
| Tipo | geographic XML notation | geographic vector JSON |
| Compresión | XML text (KMZ when ZIP compressed) | none (JSON text) |
| Especificación estándar | OGC KML 2.3 | IETF RFC 7946 |
| Cabecera de bytes mágicos | 3C 3F 78 6D 6C ... 3C 6B 6D 6C (<kml) | 7B 22 74 79 70 65 22 3A 20 22 ({"type": ") JSON header |
Resumen de formatos y aplicaciones
Los datos geográficos a menudo se transfieren entre herramientas de mapas de escritorio y aplicaciones web. El KML de Google es el formato estándar utilizado por Google Earth, que estructura puntos, líneas y polígonos dentro de un árbol XML. Los navegadores web modernos y las bibliotecas de mapas como Mapbox y Leaflet prefieren GeoJSON porque coincide de forma nativa con las estructuras de datos utilizadas por JavaScript. Los desarrolladores y analistas de sistemas de información geográfica (SIG) convierten KML a GeoJSON para cargar superposiciones de mapas rápidamente en páginas web sin necesidad de software de escritorio especializado. Las aplicaciones web procesan JSON al instante en comparación con el análisis de grandes documentos XML. Cuando los usuarios cargan un mapa web, un archivo GeoJSON se alimenta directamente en los motores de renderizado vectorial. Esta conversión elimina la sobrecarga de traducir etiquetas XML durante el tiempo de ejecución. Permite que los mapas muestren miles de elementos sin problemas mientras mantienen geometrías de coordenadas precisas.
Especificaciones técnicas y desglose de códecs
El KML de Google utiliza el tipo MIME application/vnd.google-earth.kml+xml y se basa en la sintaxis de texto XML, o en un contenedor ZIP conocido como KMZ cuando está comprimido. GeoJSON utiliza el tipo MIME application/geo+json y consta de texto plano sin comprimir estructurado como un objeto JSON. Los archivos KML suelen comenzar con bytes de declaración XML estándar, mientras que los archivos KMZ comienzan con los bytes de cabecera de archivo local ZIP 50 4B 03 04. Los archivos GeoJSON comienzan con el carácter ASCII '{' que representa el objeto JSON raíz. El proceso de conversión analiza el árbol del documento XML, extrae matrices de coordenadas y etiquetas de metadatos, y los reescribe en colecciones de elementos JSON compatibles con RFC 7946 sin perder la precisión de las coordenadas.
Compatibilidad con sistemas operativos y navegadores
Ambos formatos funcionan en todos los sistemas operativos modernos, incluidos Windows, macOS, Linux, iOS y Android. GeoJSON se ejecuta de forma nativa en todos los navegadores web modernos, como Chrome, Firefox, Safari y Edge, porque los navegadores analizan JSON de manera nativa. El KML de Google requiere software de escritorio especializado como Google Earth o herramientas de traducción como QGIS para renderizarse correctamente, ya que los navegadores web no pueden mostrar archivos KML de forma nativa sin bibliotecas de análisis de terceros.
💡 Información útil
Asegúrese siempre de que su KML de origen utilice coordenadas geográficas WGS 84 antes de realizar la conversión a GeoJSON para evitar errores de desplazamiento espacial en sus mapas web.
Comparativa de formatos y especificaciones técnicas
Un archivo KML estándar de 5 megabytes se convierte en un archivo GeoJSON de aproximadamente 4.2 megabytes. En una red móvil 4G a 30 megabits por segundo, la descarga de este archivo toma alrededor de 1.1 segundos. En una red 5G a 150 megabits por segundo, la transferencia finaliza en 0.2 segundos. Con una conexión de fibra óptica de un Gigabit, el archivo se transfiere instantáneamente en menos de 0.05 segundos.
Preguntas frecuentes
¿Cómo se convierte KML de Google a GeoJSON sin perder calidad?
La conversión no tiene pérdidas matemáticas para los datos de coordenadas. Ambos formatos almacenan coordenadas geográficas utilizando el sistema de referencia espacial WGS 84. Sin embargo, las reglas de estilo específicas en KML, como las URL de iconos personalizados y las alturas complejas de extrusión de polígonos, pueden no tener equivalentes directos en el GeoJSON estándar y es posible que requieran una recreación manual.
¿Cuál es la diferencia entre KML de Google y GeoJSON?
El KML de Google es un lenguaje basado en XML diseñado para navegadores de la Tierra, con una estructura de nodos jerárquica que admite estilos enriquecidos, vistas de cámara y elementos 3D. GeoJSON es un formato ligero construido sobre JSON, optimizado para API web y gráficos vectoriales con una estructura plana que contiene colecciones de elementos, geometrías y propiedades simples.