GeoJSON konvertálása Google KML formátumba
A GeoJSON vektorok Google KML formátumra történő konvertálása a könnyű JSON koordinátatömböket a Google Earth és a Google Maps számára szabott, strukturált XML dokumentumokká alakítja át.
Formátum-összehasonlítás és műszaki specifikációk
| Specifikáció | GEOJSON | KML |
|---|---|---|
| MIME-típus | application/geo+json | application/vnd.google-earth.kml+xml |
| Típus | geographic vector JSON | geographic XML notation |
| Tömörítés | none (JSON text) | XML text (KMZ when ZIP compressed) |
| Szabványos specifikáció | IETF RFC 7946 | OGC KML 2.3 |
| Varázsbájtok fejléc (Magic Bytes) | 7B 22 74 79 70 65 22 3A 20 22 ({"type": ") JSON header | 3C 3F 78 6D 6C ... 3C 6B 6D 6C (<kml) |
Formátum áttekintése és alkalmazási területei
A földrajzi vektoriális adatokat gyakran GeoJSON formátumban rögzítik és osztják meg, mivel a webfejlesztők és a JavaScript térképészeti könyvtárak természetes módon dolgozzák fel azokat. Az asztali GIS szoftverek, például a Google Earth és a régebbi vállalati földgömb-alkalmazások azonban a Keyhole Markup Language-et, ismertebb nevén KML-t igénylik. Ezen formátumok fordítása lehetővé teszi a terepkutatók és a térképészek számára, hogy virtuális földgömbökön belül tekinthessék meg a webről letapogatott határpoligonokat, a drónok telemetriai pontjait és a települési létesítmények útvonalait anélkül, hogy egyedi parancsprogramokat kellene írniuk. Az adatok GeoJSON-ból KML-be történő áthelyezése szintén áthidalja a szakadékot a nyílt forráskódú webes API-k és a felhasználói központú térképészeti eszközök között. Számos városfejlesztő gyűjt adatokat a Leaflet vagy a Mapbox könyvtárak használatával, amelyek GeoJSON fájlokat hoznak ki kimenetként. Amikor az érdekelt felek át akarják tekinteni ezeket a pontos rétegeket egy 3D-s asztali környezetben, a geometriai címkék, a stílusattribútumok és a metaadatok tulajdonságainak XML csomópontokká történő konvertálása biztosítja, hogy az olyan vizuális elemek, mint az ikonok, a vonalvastagságok és a kitöltőszínek helyesen jelenjenek meg.
Műszaki specifikációk és kodek áttekintés
A GeoJSON az application/geo+json MIME-típust használja, és földrajzi pontokat, vonalakat és poligonokat jelenít meg egyszerű szöveges JavaScript Object Notation formátumban. Nem tartalmaz bináris varázsbájt (magic byte) fejezeteket, ehelyett a szabványos ASCII vagy UTF-8 zárójelekre támaszkodik, valamint olyan kulcs-érték párokra, mint a "type": "FeatureCollection". Ezzel szemben a Google KML az application/vnd.google-earth.kml+xml MIME-típust használja, és a térbeli elemeket olyan XML címkékbe, mint a <Placemark>, a <Point> és a <Polygon>, strukturálja. Bár egyik formátum sem használ natívan veszteséges tömörítést szöveges szinten, a KML fájlok szabványos DEFLATE tömörítéssel KMZ archívumokba tömöríthetők a nehéz vektoriális adatok és a helyi ikonképek együttes csomagolásához.
OS és böngésző kompatibilitás
Mindkét formátum zökkenőmentesen betöltődik a modern operációs rendszerekben, beleértve a Windowsot, a macOS-t, a Linuxot, az iOS-t és az Androidot. A modern webböngészők a szabványos JavaScript motorok segítségével natívan elemzik a GeoJSON karakterláncokat, míg a Google KML speciális elemzőket vagy dedikált asztali földgömb-szoftvereket, például a Google Earth Pro-t igényli. A mobilböngészők segédalkalmazás vagy kiszolgáló oldali előrenderelés nélkül nem tudják közvetlenül megjeleníteni a nyers KML fájlokat.
💡 Hasznos információk
Ha sok ezer összetett poligonból álló, nagy adatkészleteket konvertál, a KML-be történő exportálás előtt ossza fel a forrás GeoJSON-t kisebb regionális fájlokra, hogy elkerülje a memóriaf összeomlásokat a fogyasztói térképészeti alkalmazásokban.
Formátum-összehasonlítás és műszaki specifikációk
Egy szabványos, 5 megabájtos GeoJSON vektorfájl körülbelül 0,05 másodperc alatt vihető át egy 1 Gbps sebességű optikai (Fiber) kapcsolaton, körülbelül 0,4 másodperc alatt egy szabványos 5G mobilhálózaton, és nagyjából 1 másodperc alatt egy tipikus 4G LTE kapcsolaton.
Gyakran Ismételt Kérdések
Hogyan konvertálható a GeoJSON Google KML formátumba minőségromlás nélkül?
Ez a konverzió szigorúan veszteségmentes, mivel mindkét formátum pontos numerikus szélességi és hosszúsági koordináták használatával tárolja a vektoros koordinátákat. Az átalakítási folyamat a GeoJSON kulcsokat a megfelelő KML XML elemekhez képezi le anélkül, hogy megváltoztatná a koordináták pontosságát, bár az egyéni stílusbeállítási tulajdonságok manuális leképezést igényelhetnek, ha a célszoftver másként olvassa a nem szabványos attribútumokat.
Mi a különbség a GeoJSON és a Google KML között?
A GeoJSON egy JSON szintaxissal felépített, könnyű szöveges formátum, amelyet kifejezetten webes térképészeti API-khoz és JavaScript feldolgozáshoz terveztek. A Google Kml egy XML alapú nyelv, amelyet a Google Earth számára terveztek, és beépített támogatást nyújt a 3D-s magasság rögzítéséhez, az egyéni kamera nézőpontokhoz, a beágyazott mappaszerkezetekhez és a beágyazott ikonokhoz.