Hogyan készítsünk Shape fájlt C#-ban

Ez a gyors oktatóanyag elmagyarázza, hogyan hozhat létre Shapefile-t C#-ban anélkül, hogy bármilyen harmadik féltől származó eszközt telepítene. Létrehozhat vektorréteget a Shapefile illesztőprogram segítségével, azonban számos más lehetőség is rendelkezésre áll különböző típusú vektorrétegek létrehozására. SHP-fájlt létrehozhat C#-ban attribútumok, geometriai pontok és jellemzők hozzáadásával a SHP fájlként mentett vektorrétegben.

Új Shapefile létrehozásának lépései C#-ban

  1. Állítsa be a fejlesztői környezetet a Aspose.GIS for .NET hozzáadásához a Nuget csomagkezelőből
  2. Hozzon létre egy vektorréteget a VectorLayer class objektum használatával az SHP fájlnév és a megfelelő illesztőprogram megadásával
  3. Állítson be különböző attribútumokat az Attribútumok gyűjteményhez az újonnan létrehozott vektorrétegben
  4. Hozzon létre egy feature-t a VectorLayer objektum ConstructFeature függvényével
  5. Példányosítsa a Pont osztály objektumot, és állítsa be az új jellemző Geometria tulajdonságát
  6. Adja hozzá ezt a funkciót a vektorréteghez

Ezek a lépések az alkalmazás fejlesztéséhez szükséges konfigurációs részletek, szükséges osztályok, névterek és metódusok megadásával azt a folyamatot mutatják be, hogyan készíthet Shapefile-t C#-ban. Itt a lépésenkénti megközelítést osztják meg az alkalmazás fejlesztéséhez, amely Shapefile-t generál C# nyelven, ahol először egy Shapefile típusú vektorréteget hoznak létre, majd különböző attribútumokat adnak hozzá. Hasonlóképpen, az újonnan létrehozott vektor alakzathoz létrejön egy jellemző, majd beállítja a geometriai pozícióját és a jellemzők értékeit.

Kód alakzatfájl létrehozásához C#-ban

using System;
using Aspose.Gis;
namespace AsposeProjects
{
class Program
{
static void Main(string[] args) // Main function to create a Shapefile in C#
{
// Initialize a license
Aspose.Gis.License lic = new Aspose.Gis.License();
lic.SetLicense(@"Aspose.Total.lic");
// Create a vector layer
using (VectorLayer vecLayer = VectorLayer.Create("sample.shp", Drivers.Shapefile))
{
// Set attributes
vecLayer.Attributes.Add(new FeatureAttribute("ProductName", AttributeDataType.String));
vecLayer.Attributes.Add(new FeatureAttribute("City", AttributeDataType.String));
vecLayer.Attributes.Add(new FeatureAttribute("Price", AttributeDataType.Integer));
vecLayer.Attributes.Add(new FeatureAttribute("Expiry", AttributeDataType.DateTime));
// Set features
Feature firstFeature = vecLayer.ConstructFeature();
firstFeature.Geometry = new Aspose.Gis.Geometries.Point(34.02, 71.52);
firstFeature.SetValue("ProductName", "Butter");
firstFeature.SetValue("City", "Peshawar");
firstFeature.SetValue("Price", 300);
firstFeature.SetValue("Expiry", new DateTime(2022, 12,15));
// Add feature to the layer
vecLayer.Add(firstFeature);
}
System.Console.WriteLine("Done");
}
}
}

Ez a kód a Drivers.Shapefile opciót használja a vektorréteg létrehozásához, azonban más lehetőségeket is használhat, például GeoJson, Kml, Gpx, Gml, TopoJson stb., hogy más típusú vektorréteget hozzon létre. Ez a Vectorlayer osztály nem csak az attribútumokat és funkciókat tartalmazza, hanem sok konverziós lehetőséget is tartalmaz, ahol egy réteget különböző formátumokba konvertálhat.

Ez az oktatóanyag megtanított minket Shape fájl létrehozására C#-ban, azonban ha az SHP-t GPX formátumba szeretné konvertálni, olvassa el a hogyan lehet az SHP-t GPX-re konvertálni C#-ban című cikket.

 Magyar