บทช่วยสอนสั้นๆ นี้จะอธิบายวิธีการสร้างไฟล์ KML โดยใช้ C# โดยมีรายละเอียดทั้งหมดในการตั้งค่า IDE รายการขั้นตอนในการกำหนดโฟลว์ของโปรแกรม และตัวอย่างโค้ดที่สาธิตวิธีการสร้างไฟล์ KML โดยใช้ C# นอกจากนี้ยังจะแนะนำคุณในการกำหนดแอตทริบิวต์แบบกำหนดเอง การตั้งค่าค่าสำหรับไฟล์ KML และการวาดรูปทรงเรขาคณิตต่างๆ
ขั้นตอนการสร้าง KML โดยใช้ C#
- ตั้งค่าสภาพแวดล้อมที่จะใช้ Aspose.GIS for .NET โดยติดตั้งลงในโครงการของคุณสำหรับการสร้างไฟล์ KML
- เรียกใช้เมธอด CreateLayer() ในเนมสเปซ Drivers.Kml เพื่อสร้างอ็อบเจ็กต์ VectorLayer
- กำหนดแอตทริบิวต์ feature โดยตั้งชื่อและประเภท
- สร้างวัตถุของคลาส Polygon
- กำหนดวงแหวนเชิงเส้น เพิ่มคู่ละติจูด/ลองจิจูดของขอบเขตด้านนอก และกำหนดเป็นวงแหวนภายนอกสำหรับรูปหลายเหลี่ยม
- เรียกใช้เมธอด ConstructFeature() ในคลาส Layer และตั้งค่ารูปหลายเหลี่ยมด้านบนเป็นรูปทรงเรขาคณิต
- กำหนดคุณลักษณะเสริมสำหรับการจัดรูปแบบและเพิ่มลงในวัตถุเลเยอร์
ขั้นตอนเหล่านี้สรุปการพัฒนา ตัวสร้าง KML โดยใช้ C# สร้างเลเยอร์ KML กำหนดชุดแอตทริบิวต์สำหรับใช้ใน KML สร้างวัตถุรูปทรงเรขาคณิต เช่น รูปหลายเหลี่ยม และกำหนดขอบเขตด้านนอกด้วยละติจูด/ลองจิจูด สร้างฟีเจอร์ ตั้งค่ารูปทรงเรขาคณิต และเพิ่มลงในเลเยอร์ด้วยแอตทริบิวต์ที่จำเป็น
โค้ดสำหรับสร้างไฟล์ KML โดยใช้ C#
using Aspose.Gis; | |
using Aspose.Gis.Geometries; | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
var license = new License();//License for creating KML file | |
license.SetLicense("license.lic"); // Load the license to avoid limitations | |
using (var kmlLayer = Drivers.Kml.CreateLayer("rectangle.kml")) | |
{ | |
kmlLayer.Attributes.Add(new FeatureAttribute("name", AttributeDataType.String)); | |
kmlLayer.Attributes.Add(new FeatureAttribute("description", AttributeDataType.String)); | |
var polygonGeometry = new Polygon();// Define the geometry for a rectangle | |
// Outer boundary (clockwise direction) | |
var boundaryRing = new LinearRing(); | |
boundaryRing.AddPoint(-122.084, 37.422); // Lower-left corner | |
boundaryRing.AddPoint(-122.084, 37.423); // Upper-left corner | |
boundaryRing.AddPoint(-122.083, 37.423); // Upper-right corner | |
boundaryRing.AddPoint(-122.083, 37.422); // Lower-right corner | |
boundaryRing.AddPoint(-122.084, 37.422); // Close the loop | |
polygonGeometry.ExteriorRing = boundaryRing; | |
var kmlFeature = kmlLayer.ConstructFeature(); | |
kmlFeature.Geometry = polygonGeometry; | |
kmlFeature.SetValue("name", "Rectangle Shape"); | |
kmlFeature.SetValue("description", "This polygon represents a rectangular area"); | |
kmlLayer.Add(kmlFeature); | |
} | |
} | |
} |
โค้ดนี้สาธิตกระบวนการสร้างไฟล์ KML ของ Google Earth โดยใช้ C#* ในการวาดเส้น ให้ตั้งค่าเรขาคณิตเป็น LineString พร้อมอาร์เรย์ของจุดเริ่มต้นและจุดสิ้นสุดตามที่ระบุไว้ในโค้ดตัวอย่างที่มีคำอธิบายประกอบ คุณสามารถสร้างแอตทริบิวต์ประเภทต่างๆ ได้โดยใช้คลาส AttributeDataType เช่น String, Integer, Boolean และ Double
บทช่วยสอนนี้สอนเราถึงวิธีการสร้างไฟล์ KML สำหรับ Google Maps โดยใช้ C# หากต้องการสร้าง Shapefile โปรดอ่านบทความใน วิธีการสร้าง Shapefile ใน C#.