Mohou nastat situace, kdy potřebujete převést soubory KML do formátu GPX nebo naopak. Pro takové případy vás tento článek naučí, jak převést soubory KML do formátu GPX a soubory GPX do formátu KML pomocí C#.

C# KML to GPX Converter API – ke stažení zdarma

Aspose.GIS for .NET API vám umožňuje vykreslovat mapy a vytvářet, číst a převádět geografická data bez dalšího softwaru. Kromě toho vám API umožňuje převádět soubory KML do formátu GPX a naopak. Rozhraní API můžete nainstalovat buď prostřednictvím NuGet, nebo si jej stáhnout přímo ze sekce Downloads.

PM> Install-Package Aspose.GIS

Převést KML na GPX pomocí C#

Soubory KML můžeme převést do formátu GPX podle následujících kroků:

Následující ukázkový kód ukazuje, jak převést soubory KML do formátu GPX pomocí C#.

string dataDir = RunExamples.GetDataDir();
string sourceFile = dataDir + "Kml_File.kml";
string outputFile = dataDir + "output.gpx";

// V případě potřeby zadejte nastavení převodu. Je to nepovinné.
ConversionOptions options = null;

// Tato volba přiřadí Wgs84 cílové vrstvě.
// Konverze může způsobit chybu Pokud cílová vrstva nepodporuje prostorovou referenci Wgs84. Takže potřeba zkontrolovat.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// Převeďte formát souboru z KML na GPX.
VectorLayer.Convert(sourceFile, Drivers.Kml, outputFile, Drivers.Gpx, options);

Převést GPX na KML pomocí C#

Soubory GPX můžeme také převést do formátu KML podle následujících kroků:

Následující ukázkový kód ukazuje, jak převést soubor GPX do formátu KML pomocí C#.

string dataDir = RunExamples.GetDataDir();
string sourceFile = dataDir + "schiehallion.gpx";
string outputFile = dataDir + "output.kml";

// V případě potřeby zadejte nastavení převodu. Je to nepovinné.
ConversionOptions options = null;

// Tato volba přiřadí Wgs84 cílové vrstvě.
// Konverze může způsobit chybu Pokud cílová vrstva nepodporuje prostorovou referenci Wgs84. Takže potřeba zkontrolovat.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// Převeďte formát souboru z GPX do KML.
VectorLayer.Convert(sourceFile, Drivers.Gpx, outputFile, Drivers.Kml, options);

Získejte bezplatnou licenci

Abyste mohli API vyzkoušet bez omezení hodnocení, můžete získat bezplatnou dočasnou licenci.

Závěr

V tomto článku jste se naučili převádět soubory KML do formátu GPX a naopak pomocí C#. Sdílené úryvky kódu ukazují, jak těchto konverzí dosáhnout pomocí několika řádků kódu. Aspose.GIS for .NET je výkonné a na funkce bohaté API, které vám pomáhá při práci s geoprostorovými daty. Rozhraní API můžete podrobně prozkoumat na oficiální dokumentaci. V případě jakýchkoli dotazů nás neváhejte kontaktovat na našem bezplatném fóru podpory.

Viz také