ممکن است شرایطی وجود داشته باشد که لازم باشد فایل‌های KML را به فرمت GPX تبدیل کنید یا برعکس. برای چنین مواردی در این مقاله نحوه تبدیل فایل های KML به فرمت GPX و فایل های GPX به فرمت KML با استفاده از سی شارپ به شما آموزش داده می شود.

C# KML به GPX Converter API - دانلود رایگان

Aspose.GIS for .NET API به شما امکان می دهد نقشه ها را رندر کنید و داده های جغرافیایی را بدون نرم افزار اضافی ایجاد کنید، بخوانید و تبدیل کنید. علاوه بر این، API به شما امکان می دهد فایل های KML را به فرمت GPX و بالعکس تبدیل کنید. می‌توانید API را از طریق NuGet نصب کنید یا آن را مستقیماً از بخش دانلودها دانلود کنید.

PM> Install-Package Aspose.GIS

تبدیل KML به GPX با استفاده از C#

با دنبال کردن مراحل زیر می توانیم فایل های KML را به فرمت GPX تبدیل کنیم:

کد نمونه زیر نحوه تبدیل فایل های KML به فرمت GPX با استفاده از C# را نشان می دهد.

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

// در صورت لزوم تنظیمات تبدیل را مشخص کنید. اختیاری است.
ConversionOptions options = null;

// این گزینه Wgs84 را به لایه مقصد اختصاص می دهد.
// اگر لایه مقصد از مرجع فضایی Wgs84 پشتیبانی نکند، تبدیل ممکن است خطا ایجاد کند. پس باید بررسی شود
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// تبدیل فرمت فایل از KML به GPX.
VectorLayer.Convert(sourceFile, Drivers.Kml, outputFile, Drivers.Gpx, options);

تبدیل GPX به KML با استفاده از C#

همچنین می‌توانیم فایل‌های GPX را با انجام مراحل زیر به فرمت KML تبدیل کنیم:

کد نمونه زیر نحوه تبدیل فایل GPX به فرمت KML را با استفاده از C# نشان می دهد.

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

// در صورت لزوم تنظیمات تبدیل را مشخص کنید. اختیاری است.
ConversionOptions options = null;

// این گزینه Wgs84 را به لایه مقصد اختصاص می دهد.
// اگر لایه مقصد از مرجع فضایی Wgs84 پشتیبانی نکند، تبدیل ممکن است خطا ایجاد کند. پس باید بررسی شود
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs84))
{
    options = new ConversionOptions()
    {
        DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs84,
    };
}

// تبدیل فرمت فایل از GPX به KML.
VectorLayer.Convert(sourceFile, Drivers.Gpx, outputFile, Drivers.Kml, options);

مجوز رایگان دریافت کنید

برای امتحان API بدون محدودیت ارزیابی، می توانید [یک مجوز موقت رایگان] را دریافت کنید.

نتیجه

در این مقاله با نحوه تبدیل فایل های KML به فرمت GPX و بالعکس با استفاده از سی شارپ آشنا شدید. تکه کدهای به اشتراک گذاشته شده نحوه دستیابی به این تبدیل ها را تنها با چند خط کد نشان می دهد. Aspose.GIS for .NET یک API قدرتمند و غنی است که به شما در کار با داده های مکانی کمک می کند. با مراجعه به مستندات رسمی می‌توانید API را با جزئیات بررسی کنید. در صورت وجود هرگونه سوال، لطفاً با ما در [تالار گفتمان پشتیبانی رایگان18 تماس بگیرید.

همچنین ببینید