KML konvertálása SHP-vé a C# használatával

Ez a cikk tájékoztatást ad arról, hogyan konvertálhatja a(z) KML-t SHP-re C# használatával, megosztva a környezet testreszabásának lépéseit, majd meghatározva az alkalmazás írásához szükséges eljárást. Lépésről lépésre kap egy parancskészletet, amely kiemeli az összes szükséges osztályt, névteret és metódust, amely az átalakításhoz szükséges. Végül megosztanak egy futtatható mintakódot, amely a KML-t SHP-vé alakítja C# használatával, amely végrehajtható .NET-t vagy Linuxot támogató MS Windows-ban és .NET Core-t támogató macOS-ben.

A KML SHP-vé konvertálásának lépései C# használatával

  1. Hozzon létre fejlesztői környezetet a Aspose.GIS for .NET NuGet csomagkezelőből történő telepítéséhez
  2. A folyamat testreszabásához deklaráljon egy ConversionOptions típusú változót
  3. Ellenőrizze, hogy a célréteg-típus támogatja-e az adott térbeli referenciarendszert
  4. Állítsa be a kívánt térbeli referenciarendszer-tulajdonságot a ConversionOptions osztályobjektumban
  5. A(z) VectorLayer használatával). A konvertálási módszer konvertálja a forrás KML-t SHP-vé a kiválasztott beállításokkal

Ezek az egyszerű lépések segítik a KML Shapefile konverter C# használatával történő megírását azáltal, hogy bemutatják a mintakód futtatásához telepítendő erőforrásokat. Ez a folyamat testreszabás nélkül is végrehajtható, de a jobb megértés érdekében bevezetik a ConversionOptions osztályt, amely különböző paraméterek beállítására használható. Az utolsó lépésben bemutatásra kerül a tényleges metódus, amely végrehajtja az átalakítást a kívánt tulajdonságokkal rendelkező opcionális paraméterrel együtt.

Kód a KML SHP-re C# használatával történő módosításához

using Aspose.Gis;
using Aspose.Gis.SpatialReferencing;
namespace AsposeProjects
{
class Program
{
static void Main(string[] args) // Main function to Convert KML to SHP using C#
{
// Load license
Aspose.Gis.License lic = new Aspose.Gis.License();
lic.SetLicense(@"Aspose.Total.lic");
// Create ConversionOptions if required
ConversionOptions options = new ConversionOptions();
// This options assigns Wgs84 to the destination layer.
// Conversion may throw error If destination layer does not support the Wgs84 spatial reference. So need to check.
//
if (Drivers.Shapefile.SupportsSpatialReferenceSystem(SpatialReferenceSystem.Wgs72))
options.DestinationSpatialReferenceSystem = SpatialReferenceSystem.Wgs72;
// Convert file format from KML to Shapefile.
VectorLayer.Convert("source.kml", Drivers.Kml, "destination.shp", Drivers.Shapefile, options);
System.Console.WriteLine("Done");
}
}
}

Az utolsó kódsort csak az első négy paraméterrel használhatja, de ha egy adott térbeli referenciarendszert szeretne hozzárendelni a célréteghez, akkor csak akkor használhatja a ConversionOptions osztályobjektumot. A ConversionOptions osztály további tulajdonságokat is tartalmaz, például AttributeConverter, DestinationDriverOptions, DestinationSpatialReferenceSystem és SourceDriverOptions, amelyek szükség esetén konfigurálhatók. Ez a mintakód egy teljes KML-ből Shapefile konvertálót mutat be C# használatával, amely úgy is használható, ahogy van.

Itt megtanultuk, hogyan kell írni egy KML to SHP konvertert C# használatával, de ha a Shapefile-t Geojson formátumba szeretné konvertálni, akkor olvassa el a hogyan lehet az SHP-t Geojson-ra konvertálni C#-ban cikket.

 Magyar