Düzenleme KML Dosyası Oluştur

KML, XML gösteriminden genişletilmiş Anahtar Deliği Biçimlendirme Dili’nin kısaltmasıdır. Bu bir GIS dosya biçimidir ve coğrafi bilgileri görüntülemek için kullanılır. KML dosyalarını programlı olarak oluşturabilir ve C# dilini kullanarak bunlardan bilgi okuyabilirsiniz. KML dosya biçimiyle ilgili aşağıdaki bölümleri inceleyelim:

KML Dosyaları Oluşturma veya Okuma – API Kurulumu

Aspose.GIS for .NET API, diğer birçok desteklenen dosya formatı ile birlikte KML dosyalarıyla çalışmayı destekler. .NET tabanlı uygulamalarda vektör dosyalarını işlemek için API’yi yükleyelim. API’yi Yeni Sürümler bölümünden veya NuGet galerisinden aşağıdaki kurulum komutuyla indirmeniz gerekir:

PM> Install-Package Aspose.GIS

API’yi yapılandırdıktan sonra, KML dosyalarını oluşturmaya veya değiştirmeye hazırsınız. Artık küçük ayrıntılar için endişelenmenize gerek yok çünkü yalnızca basit API çağrıları yapmanız yeterli. Diğer ayrıntılara geçelim:

C# kullanarak Programlı Olarak KML Dosyası Oluşturun

KML dosyaları, XML dosyaları gibi etiket tabanlı yapıyı izler. Konumları belirlemek, seyahatlerinizi planlamak veya takip etmek ve diğer birçok önemli senaryo için KML dosyalarını kullanabilirsiniz. Aşağıdaki adımlarla C# kullanarak programlı olarak KML dosyaları oluşturabilirsiniz:

  1. Bir katman oluşturun
  2. Geometri ve nitelikler için feature‘u başlat
  3. Farklı özelliklerin değerini ayarla
  4. Özelliği belirli bir Katmana ekleyin

Aşağıdaki kod parçacığı, C# dilinde programlı olarak KML dosyalarının nasıl oluşturulacağını gösteren temel ve basit bir gösterimdir:

// Katman oluştur
using (var layer = Drivers.Kml.CreateLayer(dataDir + "Kml_File_out.kml"))
{
    // Geometri ve nitelikler için unsuru başlat
    layer.Attributes.Add(new FeatureAttribute("string_data", AttributeDataType.String));
    layer.Attributes.Add(new FeatureAttribute("int_data", AttributeDataType.Integer));
    layer.Attributes.Add(new FeatureAttribute("bool_data", AttributeDataType.Boolean));
    layer.Attributes.Add(new FeatureAttribute("float_data", AttributeDataType.Double));

    // Farklı özelliklerin değerini ayarla
    Feature feature = layer.ConstructFeature();
    feature.SetValue("string_data", "string value");
    feature.SetValue("int_data", 10);
    feature.SetValue("bool_data", true);
    feature.SetValue("float_data", 3.14);
    feature.Geometry = new LineString(new[] { new Point(0, 0), new Point(1, 1) });

    // Özelliği belirli bir Katmana ekleyin
    layer.Add(feature);

    Feature feature2 = layer.ConstructFeature();
    feature2.SetValue("string_data", "string value2");
    feature2.SetValue("int_data", 100);
    feature2.SetValue("bool_data", false);
    feature2.SetValue("float_data", 3.1415);
    feature2.Geometry = Geometry.Null;

    layer.Add(feature2);
}

C# kullanarak Programlı Olarak KML dosyalarından Özellikleri Okuyun

Bir KML dosyasının temel özellikleri Yer İşaretlerini, Açıklamaları, Yolları vb. içerebilir. Yukarıdaki örnekte oluşturduğumuz KML dosyası ile devam edelim. Bir KML dosyasının herhangi bir özelliğini aşağıdaki adımlarla okuyabilirsiniz:

  1. Giriş KML dosyasını OpenLayer yöntemiyle yükle
  2. Özelliklerin sayısını al
  3. Belirli bir dizinde bir özelliğe erişin
  4. KML dosyasının özelliklerini okuyun

Aşağıdaki kod parçacığı, bir KML dosyasındaki özelliklerin C# dilinde programlı olarak nasıl okunacağını gösterir:

// Giriş KML dosyasını OpenLayer yöntemiyle yükle
using (var layer = Drivers.Kml.OpenLayer(dataDir + "Kml_File.kml"))
{
    // Özelliklerin sayısını al
    int count = layer.Count;

    // Belirli bir dizindeki bir özelliğe erişin
    Feature featureAtIndex1 = layer[0];

    Console.WriteLine(featureAtIndex1.GetValue<string>("string_data"));

    Feature featureAtIndex2 = layer[1];

    Console.WriteLine(featureAtIndex2.GetValue<string>("string_data"));
}

Çözüm

Bu yazıda, KML dosyalarıyla nasıl çalışılacağını araştırdık. C# örnek kodu yardımıyla bir KML dosyası oluşturmayı veya özelliklerini programlı olarak okumayı öğrendik. Aynı şekilde, diğer birçok GIS dosya formatıyla nasıl çalışılacağını keşfedebilirsiniz. Endişelerinizi tartışmak için Ürün Belgelerini ziyaret edebilir veya Ücretsiz Destek Forumu üzerinden bize yazabilirsiniz. Size yardımcı olmayı çok isteriz!

Ayrıca bakınız