Google KML - GeoJSON konverter
A Google KML fájlok GeoJSON formátumba történő átalakítása átalakítja a hierarchikus XML alapú földrajzi adatokat pehelysúlyú vektoros JavaScript Object Notation formátumúvá a modern webes térképek számára.
Formátum-összehasonlítás és műszaki specifikációk
| Specifikáció | KML | GEOJSON |
|---|---|---|
| MIME-típus | application/vnd.google-earth.kml+xml | application/geo+json |
| Típus | geographic XML notation | geographic vector JSON |
| Tömörítés | XML text (KMZ when ZIP compressed) | none (JSON text) |
| Szabványos specifikáció | OGC KML 2.3 | IETF RFC 7946 |
| Varázsbájtok fejléc (Magic Bytes) | 3C 3F 78 6D 6C ... 3C 6B 6D 6C (<kml) | 7B 22 74 79 70 65 22 3A 20 22 ({"type": ") JSON header |
Formátum áttekintése és alkalmazási területei
A földrajzi adatok gyakran cserélődnek az asztali térképészeti eszközök és a webes alkalmazások között. A Google KML a Google Earth által használt standard formátum, amely pontokat, vonalakat és poligonokat struktúrál egy XML-fában. A modern webböngészők és a térképészeti könyvtárak, mint a Mapbox vagy a Leaflet, a GeoJSON-t részesítik előnyben, mert az közvetlenül illeszkedik a JavaScript által használt adatstruktúrákhoz. A fejlesztők és a térinformatikai elemzők azért alakítják át a KML-t GeoJSON-ra, hogy a térképrétegeket gyorsan betölthessék a weboldalakon különleges asztali szoftverek nélkül. A webalkalmazások a nagy XML-dokumentumok elemzéséhez képest azonnal feldolgozzák a JSON-t. Amikor a felhasználók betöltenek egy webtérképet, a GeoJSON fájl közvetlenül a vektoros renderelő motorokba táplálódik. Ez az átalakítás kiküszöböli az XML-címkék futásidejű fordításának többletköltségét. Lehetővé teszi, hogy a térképek zökkenőmentesen jelenítsenek meg ezer számra elemeket, miközben fenntartják a precíz koordinátageometriákat.
Műszaki specifikációk és kodek áttekintés
A Google KML az application/vnd.google-earth.kml+xml MIME-típust használja, és XML szöveges szintaxison alapul, vagyömlesztve egy KMZ nevű ZIP-tárolón. A GeoJSON az application/geo+json MIME-típust használja, és tömörítetlen, sima szövegből áll, amely JSON-objektumként van strukturálva. A KML fájlok gyakran szabványos XML-deklarációs bájtokkal kezdődnek, míg a KMZ archívumok az 50 4B 03 04 ZIP helyi fájlfejléc bájtokkal indulnak. A GeoJSON fájlok a '{' ASCII karakterrel kezdődnek, amely a gyökér JSON objektumot jelöli. Az átalakítási folyamat elemzi az XML dokumentumfát, kinyomtatja a koordinátatömböket és a metaadatcímkéket, majd átírja azokat az RFC 7946 szabványnak megfelelő JSON elemgyűjteményekbe a koordináták pontosságának elvesztése nélkül.
OS és böngésző kompatibilitás
Mindkét formátum működik az összes modern operációs rendszerben, beleértve a Windows, macOS, Linux, iOS és Android rendszereket. A GeoJSON natív módon fut az összes modern webböngészőben, mint például a Chrome, Firefox, Safari és Edge, mivel a böngészők natív módon elemzik a JSON-t. A Google KML olyan speciális asztali szoftvert igényel, mint a Google Earth, vagy fordítóeszközöket, mint a QGIS a helyes megjelenítéshez, mivel a webböngészők külső elemzőkönyvtárak nélkül nem tudják natív módon megjeleníteni a KML fájlokat.
💡 Hasznos információk
A GeoJSON formátumra való átalakítás előtt mindig ellenőrizze, hogy a forrás KML a WGS 84 földrajzi koordinátákat használja-e a webes térképeken előforduló térbeli eltolódási hibák elkerülése érdekében.
Formátum-összehasonlítás és műszaki specifikációk
Egy átlagos 5 megabájtos KML fájl körülbelül 4,2 megabájtos GeoJSON fájllá alakul át. Egy másodpercenként 30 megabites sebességű 4G mobilhálózaton ennek a fájlnak a letöltése körülbelül 1,1 másodpercet vesz igénybe. Egy másodpercenként 150 megabites 5G hálózaton az átvitel 0,2 másodperc alatt fejeződik be. Gigabit Fiber kapcsolaton a fájl azonnal, kevesebb mint 0,05 másodperc alatt átkerül.
Gyakran Ismételt Kérdések
Hogyan lehet Google KML-t GeoJSON-ra konvertálni a minőség romlása nélkül?
Az átalakítás a koordinátaadatok tekintetében matematikailag veszteségmentes. Mindkét formátum a WGS 84 térbeli referenciarendszert használja a földrajzi koordináták tárolására. A KML specifikus stílusszabályai azonban, mint például az egyéni ikon URL-ek és a komplex poligon-extrudálási magasságok, előfordulhat, hogy nem rendelkeznek közvetlen megfelelővel a szabványos GeoJSON-ban, és manuális újrateremtést igényelhetnek.
Mi a különbség a Google KML és a GeoJSON között?
A Google KML egy XML-alapú nyelv, amelyet földközi böngészőkhöz terveztek, hierarchikus csomópont-struktúrával, amely támogatja a gazdag stílusokat, kameranézeteket és 3D elemeket. A GeoJSON egy JSON-ra épülő, pehelysúlyú formátum, amelyet webes API-khoz és vektoros grafikákhoz optimalizáltak, és lapos szerkezettel rendelkezik, amely elemgyűjteményeket, geometriákat és egyszerű tulajdonságokat tartalmaz.