Այս արագ ձեռնարկը ուղեցույց է տալիս ինչպես փոխարկել SHP-ը GPX-ի C#-ում` տրամադրելով կազմաձևման մանրամասներ, փուլային գործընթաց և գործարկվող օրինակելի կոդը: Այս առաջադրանքը կարող եք կատարել նաև մեկ տողով կոդի միջոցով, սակայն օրինակելի կոդը ցույց կտա նաև փոխակերպման ընտրանքների կարգավորումը: Shapfile-ը C#-ով GPX-ի փոխարկելու այս գործընթացը կարող է իրականացվել Windows-ի վրա հիմնված ցանկացած համակարգում, որի վրա տեղադրված է .NET կամ Linux/macOS համակարգ, որն ունի .NET Core:
Shape ֆայլը GPX-ի C#-ով փոխարկելու քայլեր
- Տեղադրեք Aspose.GIS for .NET-ը NuGet փաթեթի կառավարիչից՝ SHP ֆայլը GPX-ի փոխարկելու համար
- Ստեղծեք ConversionOptions դասի օբյեկտը` փոխակերպման գործընթացը հարմարեցնելու համար
- Ստուգեք՝ արդյոք ձեր Shapefile դրայվերն աջակցում է որոշակի տարածական հղման համակարգ, թե ոչ
- Սահմանեք ցանկալի տարածական հղման համակարգի տարբերակը
- Փոխակերպեք 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-ի C#-ով-ի հոդվածը: