Google KML (.kml)

OGC มาตรฐาน

Keyhole Markup Language (KML) คือมาตรฐาน XML แบบเปิดสำหรับการแสดงคำอธิบายประกอบทางภูมิศาสตร์และการแสดงภาพ ซึ่งเดิมพัฒนาขึ้นสำหรับ Keyhole Earth Viewer (Google Earth) และสร้างมาตรฐานโดย Open Geospatial Consortium (OGC)

แปลง GEOJSON เป็น KML

ตัวแปลงจาก GEOJSON เป็น KML ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ

ตรวจสอบและดู Metadata

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ KML โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

เลือกหรือวางไฟล์ที่นี่

การแปลงไฟล์แบบส่วนตัว 100% ในเบราว์เซอร์ - ไฟล์จะไม่ rời ออกจากอุปกรณ์ของคุณ

หรือวาง Ctrl+V
การรับประกันความเป็นส่วนตัวแบบไม่มีการส่งผ่านเครือข่าย: อัปโหลด 0 ไบต์ไปยังเซิร์ฟเวอร์ภายนอก การประมวลผลทั้งหมดเกิดขึ้นภายในแซนด์บ็อกซ์ของเบราว์เซอร์ของคุณ

ลายเซ็นส่วนหัวในระดับไบต์ (Magic Bytes)

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ KML โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

ลายเซ็น HEX (OFFSET 0):

3C 6B 6D 6C

การแสดงผลรูปแบบ ASCII: <kml

มาตรฐาน: OGC KML 2.3 Standard

ข้อมูลจำเพาะทางเทคนิค

สถาปัตยกรรมคอนเทนเนอร์XML-based geographic visualization grammar defining Placemarks, GroundOverlays, 3D Models, and Camera perspectives
การบีบอัดUncompressed XML text (compressed with ZIP as .kmz files)
การจัดลำดับไบต์ (Byte Endianness)UTF-8 / Unicode text stream
พื้นที่สีAABBGGRR hexadecimal color strings
ช่องสัญญาณและโครงสร้างPlacemarks, paths, polygons, 3D building models, photo overlays, and tour camera paths
ขนาดสูงสุดWGS 84 coordinates: Longitude, Latitude, Altitude (in meters above sea level)
ความโปร่งใสAlpha transparency supported in AABBGGRR color strings and PNG overlays
การสตรีมและแบบโปรเกรสซีฟNetworkLinks support dynamic streaming updates from remote geospatial servers

ตารางเปรียบเทียบทางเทคนิค: KML กับคู่แข่ง

คุณลักษณะทางเทคนิคKML (ปัจจุบัน)GEOJSONGPXKMZ
กล้อง 3 มิติและการทัวร์เอียงกล้อง ทิศทาง และทัวร์บินผ่านเต็มรูปแบบไม่มี (คุณสมบัติเรขาคณิตแบนราบ)การติดตามระดับความสูงเอียงกล้องและทัวร์บินผ่านเต็มรูปแบบ
รูปแบบการแพ็กเกจเอกสาร XML แบบเพลนเท็กซ์เอกสาร JSON แบบเพลนเท็กซ์เอกสาร XML แบบเพลนเท็กซ์ไฟล์เก็บถาวร ZIP ที่มี doc.kml
รูปแบบสีAABBGGRR (อัลฟา-น้ำเงิน-เขียว-แดง)มาตรฐาน CSS / Hexไม่มีAABBGGRR
ปลายทางหลักGoogle Earth และ 3D GISเว็บแมป (Mapbox, Leaflet)การติดตามการออกกำลังกายด้วย Garmin และ GPSไฟล์เก็บถาวร Google Earth แบบสแตนด์อโลน

รูปแบบความเสียหายทั่วไปและคู่มือการกู้คืน Hex

ข้อผิดพลาด Google Earth: 'Parse error at line X: mismatched tag'.

สาเหตุหลัก: แท็ก XML ที่ไม่ได้ปิดหรือเครื่องหมายแอมเพอร์แซนด์ที่ไม่ได้หลีกเลี่ยงใน HTML คำอธิบายบอลลูน

การกู้คืน: ซ่อมแซมไวยากรณ์ XML และครอบคำอธิบายด้วย <![CDATA[...]]> โดยใช้ File2File KML Repair

การวิเคราะห์ความปลอดภัยและเวกเตอร์การโจมตีตัวแยกวิเคราะห์

ไฟล์ KML รองรับ NetworkLinks และบอลลูนคำอธิบาย HTML ซึ่งสามารถทริกเกอร์ XXE, SSRF หรือ Cross-Site Scripting (XSS) ได้

เวกเตอร์การโจมตีที่ทราบ

  • Server-Side Request Forgery (SSRF) ผ่านแท็ก <NetworkLink> ที่เป็นอันตรายซึ่งสำรวจปลายทางอินทราเน็ตภายใน
  • การฉีด XSS ผ่าน HTML ที่ไม่ได้ฆ่าเชื้อภายในแท็ก <description> ที่ดำเนินการในบอลลูน Earth บนเดสก์ท็อปหรือเว็บ
  • XML External Entity (XXE) injection ระหว่างการประมวลผล KML อัตโนมัติ

แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน:

ประวัติความเป็นมาและเหตุการณ์สำคัญ

2008Open Geospatial Consortium (OGC) นำ KML 2.2 มาใช้เป็นมาตรฐานภูมิสารสนเทศระหว่างประเทศอย่างเป็นทางการ
2005Google เข้าซื้อกิจการ Keyhole Inc. และรีแบรนด์ Keyhole Earth Viewer เป็น Google Earth พร้อมทั้งทำให้ KML แพร่หลายไปทั่วโลก
2001Keyhole Inc. สร้าง KML ขึ้นมาเพื่อใส่คำอธิบายประกอบภาพถ่ายดาวเทียม 3 มิติ

ข้อได้เปรียบและจุดเด่นสำคัญ

  • การแสดงภาพโลก 3 มิติที่สมบูรณ์: กำหนดไม่เพียงแค่จุด แต่ยังรวมถึงมุมกล้อง 3 มิติ ทิศทาง ความลาดเอียง ความสูง และทัวร์บินผ่าน
  • รองรับแบบเนทีฟโดย Google Earth, Google Maps, ArcGIS และซอฟต์แวร์ GIS บนเดสก์ท็อปมืออาชีพทั้งหมด
  • รองรับ NetworkLinks ช่วยให้ Google Earth สามารถสตรีมสภาพอากาศสด การติดตามเที่ยวบิน และการอัปเดตแผ่นดินไหวแบบไดนามิกได้

ข้อจำกัดทางเทคนิคและข้อควรพิจารณา

  • ไวยากรณ์ XML ที่ยาวทำให้ขนาดไฟล์ใหญ่กว่ารูปแบบที่กะทัดรัดอย่าง GeoJSON
  • สีใช้ลำดับเลขฐานสิบหก AABBGGRR (Alpha-Blue-Green-Red) ที่ไม่เป็นไปตามมาตรฐาน RGBA ทั่วไป
  • ฟีเจอร์ 3 มิติที่ซับซ้อน (ทัวร์, โมเดล) แทบจะไม่ได้รับการรองรับบนแพลตฟอร์มการทำแผนที่เว็บที่มีน้ำหนักเบา

เกร็ดความรู้ทางเทคนิคที่น่าสนใจ

  • Keyhole Inc. ตั้งชื่อตามดาวเทียมสอดแนมประวัติศาสตร์ KH (Keyhole) ที่สหรัฐอเมริกาปล่อยขึ้นสู่อวกาศในช่วงสงครามเย็น
  • ใน KML ค่าสีจะถูกเขียนกลับด้านเป็น AABBGGRR: สองตัวอักษรแรกคือ Alpha ตามด้วย Blue, Green และ Red ตามลำดับ
  • ไฟล์ '.kmz' เป็นเพียงไฟล์เก็บถาวร .zip มาตรฐานที่มีไฟล์ 'doc.kml' เดียวและภาพฝังตัวหรือโมเดล 3 มิติใดๆ

คำถามทางเทคนิคที่พบบ่อย

ความแตกต่างระหว่าง KML และ KMZ คืออะไร

KML เป็นไฟล์ข้อความเพลนเท็กซ์ (Plain text) XML ส่วน KMZ เป็นไฟล์ ZIP ที่ถูกบีบอัดซึ่งมีไฟล์ KML พร้อมกับไอคอนแผนที่ เท็กซ์เจอร์ หรือภาพซ้อนทับ 3 มิติที่กำหนดเอง

ฉันจะแปลง KML เป็น GeoJSON ได้อย่างไร

คุณสามารถแปลงไฟล์ Google Earth KML เป็น GeoJSON ที่สะอาดสำหรับการทำแผนที่เว็บได้ด้วยคลิกเดียวโดยใช้ File2File.app บนเบราว์เซอร์ของคุณ

ฉันสามารถเปิดไฟล์ KML ใน Google Maps ได้หรือไม่

ได้! ใน Google Maps ให้ไปที่ 'บันทึกแล้ว' (Saved) -> 'แผนที่' (Maps) -> 'สร้างแผนที่' (Create Map - Google My Maps) แล้วคลิก 'นำเข้า' (Import) เพื่ออัปโหลดไฟล์ KML ของคุณ

คู่การแปลงไฟล์ KML ที่เกี่ยวข้อง

GEOJSON ไปยัง KML

การแปลงข้อมูลเวกเตอร์ GeoJSON เป็น Google KML จะเปลี่ยนพิกัดการทำแผนที่เว็บที่มีน้ำหนักเบาให้เป็นโครงสร้าง XML ที่สมบูรณ์ซึ่งปรับแต่งสำหรับ Google Earth

KML ไปยัง GEOJSON

การแปลงไฟล์ Google KML เป็น GeoJSON จะเปลี่ยนข้อมูลภูมิศาสตร์แบบ XML ที่มีโครงสร้างลำดับชั้น ให้เป็นข้อมูลเวกเตอร์ JavaScript Object Notation น้ำหนักเบา สำหรับแผนที่เว็บสมัยใหม่

GPX ไปยัง KML

การแปลงข้อมูล GPS Track GPX เป็นรูปแบบ Google KML ช่วยให้คุณแสดงบันทึกการติดตามกลางแจ้งดิบภายใน Google Earth และแอปพลิเคชันทำแผนที่เว็บแบบกำหนดเองได้ทันที

KML ไปยัง GPX

การแปลงมาร์กอัปทางภูมิศาสตร์ของ Google KML เป็นมาตรฐาน GPS Track GPX จะทำให้ฟีเจอร์การทำแผนที่ที่เป็นกรรมสิทธิ์กลายเป็นข้อมูลจุดอ้างอิงและแทร็กสากล