KML je zkratka pro Keyhole Markup Language, která je rozšířena z XML notace. Je to formát souboru GIS a používá se k zobrazení geografických informací. Soubory KML můžete vytvářet programově a také z nich číst informace pomocí jazyka C#. Podívejme se na následující části související s formátem souborů KML:
- Vytváření nebo čtení souborů KML – Instalace API
- Vytvořte soubor KML programově pomocí C#
- Číst funkce ze souborů KML programově pomocí C#
Vytváření nebo čtení souborů KML – Instalace API
Aspose.GIS for .NET API podporuje práci se soubory KML spolu s několika dalšími podporované formáty souborů. Pojďme nainstalovat API pro manipulaci s vektorovými soubory v aplikacích založených na .NET. API si musíte stáhnout ze sekce New Releases nebo z galerie NuGet pomocí následujícího instalačního příkazu:
PM> Install-Package Aspose.GIS
Po konfiguraci rozhraní API jste připraveni vytvářet soubory KML nebo s nimi manipulovat. Nyní se nemusíte starat o drobné detaily, protože potřebujete pouze jednoduchá volání API. Pojďme k dalším podrobnostem:
Vytvořte soubor KML programově pomocí C#
Soubory KML se řídí strukturou založenou na značkách jako soubory XML. Soubory KML můžete použít k určení polohy, plánování nebo sledování cest a mnoha dalších důležitých scénářů. Soubory KML můžete vytvářet programově pomocí C# pomocí následujících kroků:
- Vytvořte vrstvu
- Inicializujte feature pro geometrii a atributy
- Nastavit hodnotu různých atributů
- Přidejte funkci do konkrétní vrstvy
Následující fragment kódu je základní a jednoduchá ukázka toho, jak programově vytvářet soubory KML v C#:
// Vytvořte vrstvu
using (var layer = Drivers.Kml.CreateLayer(dataDir + "Kml_File_out.kml"))
{
// Inicializovat funkci pro geometrii a atributy
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));
// Nastavit hodnotu různých atributů
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) });
// Přidejte funkci do konkrétní vrstvy
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);
}
Číst funkce ze souborů KML programově pomocí C#
Základní funkce souboru KML mohou zahrnovat značky míst, popisy, cesty atd. Pokračujme souborem KML, který jsme vytvořili ve výše uvedeném příkladu. Kteroukoli funkci souboru KML můžete přečíst pomocí následujících kroků:
- Načtěte vstupní soubor KML metodou OpenLayer
- Získejte počet funkcí
- Přístup k funkci na konkrétním indexu
- Přečtěte si funkce souboru KML
Níže uvedený fragment kódu ukazuje, jak programově číst funkce ze souboru KML v C#:
// Načtěte vstupní soubor KML pomocí metody OpenLayer
using (var layer = Drivers.Kml.OpenLayer(dataDir + "Kml_File.kml"))
{
// Získejte počet funkcí
int count = layer.Count;
// Přístup k funkci na konkrétním indexu
Feature featureAtIndex1 = layer[0];
Console.WriteLine(featureAtIndex1.GetValue<string>("string_data"));
Feature featureAtIndex2 = layer[1];
Console.WriteLine(featureAtIndex2.GetValue<string>("string_data"));
}
Závěr
V tomto článku jsme prozkoumali, jak pracovat se soubory KML. Naučili jsme se, jak vytvořit soubor KML nebo číst jeho funkce programově pomocí ukázkového kódu C#. Podobně můžete prozkoumat, jak pracovat s několika dalšími formáty souborů GIS. Můžete navštívit Dokumentace k produktu nebo nám napsat na Fórum bezplatné podpory a prodiskutovat jakékoli své obavy. Rádi vám pomůžeme!