Как преобразовать SHP в GPX на C#

В этом кратком руководстве рассказывается, как преобразовать SHP в GPX в C#, в нем представлены сведения о конфигурации, пошаговый процесс и пример кода, который можно запустить. Вы также можете выполнить эту задачу с помощью одной строки кода, однако пример кода также продемонстрирует настройку параметров преобразования. Этот процесс преобразования Shapefile в GPX на C# можно выполнить в любой системе на базе Windows с установленным .NET или в системе Linux/macOS с .NET Core.

Действия по преобразованию файла формы в GPX на C#

  1. Установите Aspose.GIS for .NET из диспетчера пакетов NuGet, чтобы преобразовать файл SHP в GPX.
  2. Создайте объект класса ConversionOptions, чтобы настроить процесс преобразования.
  3. Проверьте, поддерживает ли ваш драйвер Shapefile конкретную систему пространственной привязки или нет.
  4. Установите параметр для желаемой системы пространственной привязки
  5. Преобразуйте файл SHP в GPX, используя метод Convert в VectorLayer class

Эти шаги объясняют процесс преобразования файла формы в GPX на C# путем определения эталонных пространств имен и классов, необходимых для выполнения задачи. Этот процесс можно выполнить просто с помощью метода Convert в классе VectorLayer, однако для настройки процесса преобразования используются различные параметры. Он также предоставляет информацию для проверки того, поддерживает ли выбранный драйвер конкретную систему пространственной привязки или нет.

Код для конвертера SHP в GPX на C#

using System;
using Aspose.Gis;
using Aspose.Gis.SpatialReferencing;
namespace AsposeProjects
{
class Program
{
static void Main(string[] args) // Main function to convert SHP to GPX
{
// Initialize a license
Aspose.Gis.License lic = new Aspose.Gis.License();
lic.SetLicense(@"Aspose.Total.lic");
// Instantiate ConversionOptions object
ConversionOptions options = null;
// Set the desired spatial reference system
SpatialReferenceSystem spatialReferenceSystem = SpatialReferenceSystem.Wgs84;
// Check if target driver supports the selected spatial reference system
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(spatialReferenceSystem))
{
options = new ConversionOptions()
{
DestinationSpatialReferenceSystem = spatialReferenceSystem,
};
}
try
{
// Convert SHP to GPX
VectorLayer.Convert("Sample.shp", Drivers.Shapefile, "Output.gpx", Drivers.Gpx, options);
}
catch(Exception)
{
System.Console.WriteLine( $"{spatialReferenceSystem} not supported" );
}
System.Console.WriteLine("Done");
}
}
}

Этот код демонстрирует процесс преобразования SHP в GPX на C#. Вы можете использовать специальный драйвер для работы с различными форматами файлов, такими как GeoJson, Kml, Shapefile, OsmXml и Gml, и это лишь некоторые из них. В этом коде используется система пространственной привязки Wgs84, однако вы можете использовать и другие параметры, такие как Wgs72, WebMercator, Etrs89LambertConformalConic, Etrs89 и т. д., в зависимости от поддержки, предоставляемой уровнем назначения.

В этом уроке мы узнали о преобразовании SHP в GPX. Если вы хотите узнать, как конвертировать GPX в KMZ, обратитесь к статье как конвертировать GPX в KMZ в С#.

 Русский