ממיר Google KML ל-GeoJSON
המרת קבצי Google KML ל-GeoJSON הופכת נתונים גיאוגרפיים בפורמט XML היררכי לנתוני וקטור קלילים בפורמט JavaScript Object Notation עבור מפות אינטרנט מודרניות.
השוואת פורמטים ומפרטים טכניים
| מפרט | KML | GEOJSON |
|---|---|---|
| סוג MIME | application/vnd.google-earth.kml+xml | application/geo+json |
| סוג | geographic XML notation | geographic vector JSON |
| דחיסה | XML text (KMZ when ZIP compressed) | none (JSON text) |
| מפרט תקני | OGC KML 2.3 | IETF RFC 7946 |
| כותרת ביתים קסומים (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 |
סקירת פורמטים ושימושים
נתונים גיאוגרפיים עוברים לעיתים קרובות בין כלי מיפוי שולחניים ליישומים מבוססי אינטרנט. Google KML הוא הפורמט הסטנדרטי המשמש את Google Earth, המבנה נקודות, קווים ופוליגונים בתוך עץ XML. דפדפני אינטרנט מודרניים וספריות מיפוי כמו Mapbox ו-Leaflet מעדיפים GeoJSON מכיוון שהוא תואם באופן טבעי למבני הנתונים של JavaScript. מפתחים ואנליסטים של GIS ממירים KML ל-GeoJSON כדי טעון שכבות-על של מפות במהירות בדפי אינטרנט מבלי להזדקק לתוכנות שולחניות ייעודיות. יישומי אינטרנט מעבדים JSON באופן מיידי בהשוואה לניתוח מסמכי XML גדולים. כאשר משתמשים טוענים מפת אינטרנט, קובץ GeoJSON מוזן ישירות למנועי רינדור וקטוריים. המרה זו מבטלת את העומס של תרגום תגיות XML בזמן ריצה. הדבר מאפשר למפות להציג אלפי אלמנטים באופן חלק תוך שמירה על קואורדינטות מדויקות.
מפרטים טכניים ופירוט מקודדים
Google KML משתמש בסוג MIME application/vnd.google-earth.kml+xml ומתבסס על תחביר טקסט מסוג XML, או על קונטיינר ZIP הידוע בשם KMZ כאשר הוא מכווץ. GeoJSON משתמש בסוג MIME application/geo+json ומורכב מטקסט פשוט לא מכווץ המבנה כאובייקט JSON. קבצי KML מתחילים לעיתים קרובות בבתים של הצהרת XML סטנדרטית, בעוד שארכיוני KMZ מתחילים בבתים של כותרת קובץ מקומי של ZIP 50 4B 03 04. קבצי GeoJSON מתחילים בתו ASCII '{' המייצג את אובייקט ה-JSON השורשי. תהליך ההמרה מנתח את עץ מסמך ה-XML, מחלץ מערכי קואורדינטות ותגיות מטא-דאטה, ומריץ אותם מחדש לאוספי תכונות JSON התואמים לתקן RFC 7946 מבלי לאבד דיוק בקואורדינטות.
תאימות למערכות הפעלה ודפדפנים
שני הפורמטים פועלים בכל מערכות ההפעלה המודרניות כולל Windows, macOS, Linux, iOS ו-Android. GeoJSON פועל באופן טבעי בכל דפדפני האינטרנט המודרניים כגון Chrome, Firefox, Safari ו-Edge מכיוון שדפדפנים מנתחים JSON באופן טבעי. Google KML דורש תוכנה שולחנית ייעודית כמו Google Earth או כלי תרגום כמו QGIS כדי להציג כראוי, שכן דפדפני אינטרנט אינם יכולים להציג קובצי KML באופן טבעי ללא ספריות ניתוח צד שלישי.
💡 מידע שימושי
ודא תמיד שקובץ ה-KML המקורי שלך משתמש בקואורדינטות גיאוגרפיות מסוג WGS 84 לפני ההמרה ל-GeoJSON כדי למנוע שגיאות היסט מרחבי במפות האינטרנט שלך.
השוואת פורמטים ומפרטים טכניים
קובץ KML סטנדרטית בגודל 5 מגה-בייט מומר לקובץ GeoJSON בגודל של כ-4.2 מגה-בייט. ברשת סלולרית 4G הפועלת במהירות של 30 מגה-ביט לשנייה, הורדת קובץ זה לוקחת כ-1.1 שניות. ברשת 5G הפועלת במהירות של 150 מגה-ביט לשנייה, ההעברה מסתיימת תוך 0.2 שניות. בחיבור סיב אופטי במהירות גיגה-ביט, הקובץ עובר באופן מיידי בפחות מ-0.05 שניות.
שאלות נפוצות
כיצד ממירים Google KML ל-GeoJSON מבלי לאבד איכות?
ההמרה אינה מאבדת נתונים מבחינה מתמטית עבור נתוני קואורדינטות. שני הפורמטים מאחסנים קואורדינטות גיאוגרפיות באמצעות מערכת הייחוס המרחבית WGS 84. עם זאת, כללי עיצוב ספציפיים ב-KML, כגון כתובות URL של אייקונים מותאמים אישית וגבהי פוליגונים מורכבים, עשויים שלא להיות בעלי מקבילים ישירים ב-GeoJSON סטנדרטי ועלולים לדרוש יצירה מחדש ידנית.
מה ההבדל בין Google KML ל-GeoJSON?
Google KML היא שפה מבוססת XML המיועדת לדפדפני כדור הארץ, הכוללת מבנה צמתים היררכי התומך בעיצוב עשיר, תצוגות מצלמה ואלמנטים תלת-ממדיים. GeoJSON הוא פורמט קליל הבנוי על גבי JSON, המותאם לממשקי API של אינטרנט ולגרפיקה וקטורית עם מבנה שטוח המכיל אוספי תכונות, גיאומטריות ומאפיינים פשוטים.