Konvertor GeoJSON na Google KML
Konverzia vektorov GeoJSON na Google KML prekladá ľahké polia súradníc JSON do štruktúrou definovaných dokumentov XML prispôsobených pre Google Earth a Mapy Google.
Porovnanie formátov a technické špecifikácie
| Špecifikácia | GEOJSON | KML |
|---|---|---|
| MIME typ | application/geo+json | application/vnd.google-earth.kml+xml |
| Typ | geographic vector JSON | geographic XML notation |
| Kompresia | none (JSON text) | XML text (KMZ when ZIP compressed) |
| Štandardná špecifikácia | IETF RFC 7946 | OGC KML 2.3 |
| Hlavička magických bajtov | 7B 22 74 79 70 65 22 3A 20 22 ({"type": ") JSON header | 3C 3F 78 6D 6C ... 3C 6B 6D 6C (<kml) |
Prehľad formátu a použitie
Geografické vektorové údaje sa často zaznamenávajú a zdieľajú pomocou formátu GeoJSON, pretože weboví vývojári a knižnice mapovania JavaScriptu ho spracúvajú prirodzeným spôsobom. Desktopový GIS softvér, ako napríklad Google Earth, a staršie podnikové aplikácie pre virtuálne glóbusy však vyžadujú jazyk Keyhole Markup Language, všeobecne známy ako KML. Preklad týchto formátov umožňuje terénnym výskumníkom a kartografom prezerať si polygóny hraníc získané z webu, body telemetrie dronov a trasy komunálnych zariadení vo virtuálnych glóbusoch bez písania vlastných skriptov. Presun údajov z GeoJSON do KML tiež premosťuje priepasť medzi open-source webovými rozhraniami API a nástrojmi na mapovanie orientovanými na spotrebiteľa. Mnoho mestských plánovačov zhromažďuje údaje pomocou knižníc Leaflet alebo Mapbox, ktoré exportujú súbory GeoJSON. Keď si zainteresované strany chcú prezrieť presne tieto vrstvy v 3D desktopovom prostredí, konverzia značiek geometrie, atribútov štýlu a vlastností metadát do uzlov XML zaisťuje, že vizuálne prvky, ako sú ikony, šírky čiar a farby výplne, sa vykreslia správne.
Technické špecifikácie a prehľad kodekov
GeoJSON používa typ MIME application/geo+json a reprezentuje geografické body, čiary a polygóny v čistom texte JavaScript Object Notation. Neobsahuje žiadne binárne magické bajty, namiesto toho sa spolieha na štandardné zátvorky ASCII alebo UTF-8 a páry kľúč-hodnota, ako napríklad "type": "FeatureCollection". Naopak, Google KML využíva typ MIME application/vnd.google-earth.kml+xml a štrukturuje priestorové prvky v rámci značiek XML, ako sú <Placemark>, <Point> a <Polygon>. Hoci ani jeden formát na úrovni textu natívne nepoužíva stratovú kompresiu, súbory KML je možné zazipsovať do archívov KMZ pomocou štandardnej kompresie DEFLATE, čím sa spoja ťažké vektorové údaje a lokálne ikony obrázkov.
Kompatibilita s OS a prehliadačmi
Oba formáty sa bez problémov načítavajú vo všetkých moderných operačných systémoch vrátane Windows, macOS, Linux, iOS a Android. Moderné webové prehliadače natívne analyzujú reťazce GeoJSON pomocou štandardných enginov JavaScriptu, zatiaľ čo Google KML vyžaduje špecializované analyzátory alebo špecializovaný desktopový softvér pre prácu s glóbusom, ako je Google Earth Pro. Mobilné prehliadače nedokážu zobraziť surové súbory KML priamo bez pomôckovej aplikácie alebo predbežného vykresľovania na strane servera.
💡 Užitočné informácie
Pri konverzii veľkých súborov údajov s tisíckami zložitých polygónov rozdelte zdrojový súbor GeoJSON pred exportom do formátu KML na menšie regionálne súbory, aby ste predišli zlyhaniam pamäte v spotrebiteľských mapovacích aplikáciách.
Porovnanie formátov a technické špecifikácie
Štandardný vektorový súbor GeoJSON s veľkosťou 5 megabajtov sa prenesie za približne 0,05 sekundy cez pripojenie Fiber s rýchlosťou 1 Gbps, približne za 0,4 sekundy cez štandardnú mobilnú sieť 5G a približne za 1 sekundu cez typické pripojenie 4G LTE.
Často kladené otázky
Ako konvertovať GeoJSON na Google KML bez straty kvality?
Táto konverzia je prísne bezstratová, pretože oba formáty ukladajú súradnice vektorov pomocou presných číselných hodnôt zemepisnej šírky a dĺžky. Proces prekladu mapuje kľúče GeoJSON na zodpovedajúce prvky KML XML bez zmeny presnosti súradníc, hoci vlastnosti vlastného štýlu môžu vyžadovať manuálne mapovanie, ak cieľový softvér číta neštandardné atribúty inak.
Aký je rozdiel medzi GeoJSON a Google KML?
GeoJSON je ľahký textový formát postavený na syntaxi JSON, navrhnutý špeciálne pre webové mapovacie rozhrania API a spracovanie v JacasCripte. Google KML je jazyk založený na XML navrhnutý pre Google Earth, ktorý ponúka vstavanú podporu pre 3D prichytávanie k nadmorskej výške, vlastné pohľady kamery, vnorené hierarchie priečinkov a vložené ikony.