Potrebbero verificarsi situazioni in cui è necessario convertire i file KML in formato GPX o viceversa. In questi casi, questo articolo ti insegnerà come convertire i file KML in formato GPX e i file GPX in formato KML usando C#.

API di conversione da C# KML a GPX - Download gratuito

L’API Aspose.GIS for .NET consente di eseguire il rendering di mappe e creare, leggere e convertire dati geografici senza software aggiuntivo. Inoltre, l’API consente di convertire i file KML in formato GPX e viceversa. Puoi installare l’API tramite NuGet o scaricarla direttamente dalla sezione Download.

PM> Install-Package Aspose.GIS

Converti KML in GPX usando C#

Possiamo convertire i file KML in formato GPX seguendo i passaggi indicati di seguito:

Il codice di esempio seguente mostra come convertire i file KML in formato GPX usando C#.

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

// Specificare le impostazioni di conversione, se necessario. È facoltativo.
ConversionOptions options = null;

// Questa opzione assegna Wgs84 al livello di destinazione.
// La conversione può generare un errore Se il livello di destinazione non supporta il riferimento spaziale Wgs84. Quindi è necessario controllare.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// Converti il formato di file da KML a GPX.
VectorLayer.Convert(sourceFile, Drivers.Kml, outputFile, Drivers.Gpx, options);

Converti GPX in KML usando C#

Possiamo anche convertire i file GPX in formato KML seguendo i passaggi indicati di seguito:

Il codice di esempio seguente mostra come convertire un file GPX in formato KML usando C#.

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

// Specificare le impostazioni di conversione, se necessario. È facoltativo.
ConversionOptions options = null;

// Questa opzione assegna Wgs84 al livello di destinazione.
// La conversione può generare un errore Se il livello di destinazione non supporta il riferimento spaziale Wgs84. Quindi è necessario controllare.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// Converti il formato di file da GPX a KML.
VectorLayer.Convert(sourceFile, Drivers.Gpx, outputFile, Drivers.Kml, options);

Ottieni una licenza gratuita

Per provare l’API senza limitazioni di valutazione, puoi ottenere una licenza temporanea gratuita.

Conclusione

In questo articolo, hai imparato come convertire i file KML in formato GPX e viceversa usando C#. I frammenti di codice condivisi mostrano come ottenere queste conversioni con poche righe di codice. Aspose.GIS per .NET è un’API potente e ricca di funzionalità che ti aiuta a lavorare con i dati geospaziali. Puoi esplorare l’API in dettaglio visitando la documentazione ufficiale. In caso di domande, non esitare a contattarci nel nostro forum di supporto gratuito.

Guarda anche