Pode haver situações em que você precise converter arquivos KML para o formato GPX ou vice-versa. Para esses casos, este artigo ensinará como converter arquivos KML para o formato GPX e arquivos GPX para o formato KML usando C#.
- API de conversão de C# KML para GPX - Download gratuito
- Converter KML para GPX usando C#
- Converter GPX para KML usando C#
API de conversão de C# KML para GPX - Download gratuito
Aspose.GIS for .NET API permite renderizar mapas e criar, ler e converter dados geográficos sem software adicional. Além disso, a API permite converter arquivos KML para o formato GPX e vice-versa. Você pode instalar a API por meio do NuGet ou baixá-la diretamente da seção Downloads.
PM> Install-Package Aspose.GIS
Converter KML para GPX usando C#
Podemos converter arquivos KML para o formato GPX seguindo as etapas abaixo:
- Crie uma instância da classe ConversionOptions.
- Atribua o SpatialReferenceSystem.Wgs84 ao objeto ConversionOptions usando a propriedade DestinationSpatialReferenceSystem.
- Converta o arquivo KML para o formato GPX usando o método VectorLayer.Convert(string sourcePath, FileDriver sourceDriver, string destinationPath, FileDriver destinationDriver, ConversionOptions options).
O código de exemplo a seguir mostra como converter arquivos KML para o formato GPX usando C#.
string dataDir = RunExamples.GetDataDir();
string sourceFile = dataDir + "Kml_File.kml";
string outputFile = dataDir + "output.gpx";
// Especifique as configurações de conversão, se necessário. É opcional.
ConversionOptions options = null;
// Esta opção atribui Wgs84 à camada de destino.
// A conversão pode gerar erro se a camada de destino não suportar a referência espacial Wgs84. Então precisa verificar.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
options = new ConversionOptions()
{
DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
};
}
// Converta o formato de arquivo de KML para GPX.
VectorLayer.Convert(sourceFile, Drivers.Kml, outputFile, Drivers.Gpx, options);
Converter GPX para KML usando C#
Também podemos converter arquivos GPX para o formato KML seguindo as etapas abaixo:
- Crie uma instância da classe ConversionOptions.
- Atribua o SpatialReferenceSystem.Wgs84 ao objeto ConversionOptions usando a propriedade DestinationSpatialReferenceSystem.
- Converta o arquivo GPX para o formato KML usando o método VectorLayer.Convert(string sourcePath, FileDriver sourceDriver, string destinationPath, FileDriver destinationDriver, ConversionOptions options).
O código de exemplo a seguir mostra como converter um arquivo GPX para o formato KML usando C#.
string dataDir = RunExamples.GetDataDir();
string sourceFile = dataDir + "schiehallion.gpx";
string outputFile = dataDir + "output.kml";
// Especifique as configurações de conversão, se necessário. É opcional.
ConversionOptions options = null;
// Esta opção atribui Wgs84 à camada de destino.
// A conversão pode gerar erro se a camada de destino não suportar a referência espacial Wgs84. Então precisa verificar.
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
options = new ConversionOptions()
{
DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
};
}
// Converta o formato de arquivo de GPX para KML.
VectorLayer.Convert(sourceFile, Drivers.Gpx, outputFile, Drivers.Kml, options);
Obtenha uma licença gratuita
Para experimentar a API sem limitações de avaliação, você pode obter uma licença temporária gratuita.
Conclusão
Neste artigo, você aprendeu como converter arquivos KML para o formato GPX e vice-versa usando C#. Os snippets de código compartilhados demonstram como conseguir essas conversões com apenas algumas linhas de código. Aspose.GIS for .NET é uma API poderosa e rica em recursos que auxilia você a trabalhar com dados geoespaciais. Você pode explorar a API em detalhes visitando a documentação oficial. Em caso de dúvidas, sinta-se à vontade para entrar em contato conosco em nosso fórum de suporte gratuito.