![Crea forme geometriche utilizzando una libreria GIS C#](images/make-geometric-shapes-in-csharp.png#center)
Questa guida è per gli sviluppatori .NET che cercano aiuto nel disegnare forme geometriche a livello di codice. Queste forme includono poligoni, punti, linee, linee curve e altro. Quindi, miriamo a sviluppare una soluzione che automatizzi l’intero processo di disegno delle forme. Pertanto, a questo scopo, opteremo per Aspose.GIS for .NET che è una potente libreria GIS C#. Inoltre, è leggero e offre numerose funzionalità per la manipolazione programmatica e la creazione di vari tipi di forme. Ora passeremo all’installazione e quindi all’implementazione di come creare forme geometriche in C#.
- Installazione della libreria GIS C#
- Disegno di linee curve in .NET - Esempio di codice
- Crea poligono a livello di codice: esempio di codice
- Genera punti geometrici: esempio di codice
Installazione della libreria GIS C#
Aspose.GIS for .NET offre un’installazione solida, scarica il file DLL oppure puoi eseguire il comando seguente in NuGet Gestione pacchetti. Questo è tutto.
![Installazione della libreria C# gis](images/csharp-gis-library-installation.png#center)
Disegno di linee curve in .NET - Esempio di codice
I passaggi seguenti e l’esempio di codice dimostrano come disegnare linee curve in uno Shapefile.
- Crea il livello e aprilo per aggiungere nuove funzionalità chiamando il metodo Create.
- Richiamare il metodo ConstructFeature per creare una nuova funzionalità.
- Inizializza una nuova istanza della classe MultiCurve.
- Richiamare il metodo Aggiungi per aggiungere una stringa di linea, una stringa circolare e una curva composta alla raccolta.
- Impostare la Geometria della funzione.
- Richiamare il metodo Aggiungi per aggiungere una funzionalità al livello.
string path = "/CreateMultiCurve.shp";
// Crea il livello e aprilo per aggiungere nuove funzionalità chiamando il metodo Create.
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
// Richiamare il metodo ConstructFeature per creare una nuova funzionalità.
var feature = layer.ConstructFeature();
// Inizializza una nuova istanza della classe MultiCurve.
var multiCurve = new MultiCurve();
// Richiamare il metodo Add per aggiungere una stringa di linea, una stringa circolare e una curva composta alla raccolta.
multiCurve.Add(Geometry.FromText("LineString (0 0, 1 0)"));
multiCurve.Add(Geometry.FromText("CircularString (2 2, 3 3, 4 2)"));
multiCurve.Add(Geometry.FromText("CompoundCurve ((0 1, 0 0), CircularString (0 0, 3 3, 6 0))"));
// Imposta la geometria della feature.
feature.Geometry = multiCurve;
// Richiama il metodo Add per aggiungere una feature al layer.
layer.Add(feature);
}
![linee curve che disegnano in .NET](images/curve-lines-drawing-in-dotnet.png#center)
Allo stesso modo, puoi disegnare linee rette seguendo l’esempio di codice menzionato di seguito:
- Creare un’istanza della classe LineString.
- Aggiungi punti alle estremità della linea chiamando il metodo AddPoint.
string path = "/CreateLine.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
// Crea un'istanza della classe LineString.
LineString line = new LineString();
var feature = layer.ConstructFeature();
// Aggiungi punti alle estremità della linea chiamando il metodo AddPoint.
line.AddPoint(78.65, -32.65);
line.AddPoint(-98.65, 12.65);
feature.Geometry = line;
layer.Add(feature);
}
![linee di disegno in dotnet](images/lines-drawing-in-dotnet.png#center)
Crea poligono a livello di codice: esempio di codice
Successivamente, questa sezione mostra la creazione di un poligono in C# utilizzando Aspose.GIS for .NET.
- Istanziare un oggetto della classe Polygon.
- Creare un’istanza della classe LinearRing.
- Aggiungi punti alla fine delle righe chiamando il metodo AddPoint.
- Impostare l’anello esterno impostando il valore della proprietà ExteriorRing.
string path = "/CreatePolygons.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
// Istanziare un oggetto della classe Polygon.
Polygon polygon = new Polygon();
// Crea un'istanza della classe LinearRing.
LinearRing ring = new LinearRing();
// Aggiunge punti alla fine delle linee.
ring.AddPoint(50.02, 36.22);
ring.AddPoint(49.99, 36.26);
ring.AddPoint(49.97, 36.23);
ring.AddPoint(49.98, 36.17);
ring.AddPoint(50.02, 36.22);
// Imposta l'anello esterno impostando il valore della proprietà ExteriorRing.
polygon.ExteriorRing = ring;
var feature = layer.ConstructFeature();
feature.Geometry = polygon;
layer.Add(feature);
}
![Crea poligono a livello di codice](images/create-polygon-programmatically.png#center)
Genera punti geometrici - Esempio di codice
Questa libreria GIS C# offre metodi per creare punti geometrici a livello di codice:
- Crea un’istanza della classe MultiPoint e chiama il metodo Add per creare punti.
string path = "/CreatePoints.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
// Crea un'istanza della classe MultiPoint e chiama il metodo Add per creare punti.
MultiPoint multipoint = new MultiPoint();
multipoint.Add(new Point(1, 2));
multipoint.Add(new Point(3, 4));
var feature = layer.ConstructFeature();
feature.Geometry = multipoint;
layer.Add(feature);
}
![Genera punti geometrici](images/generate-geometric-points.png#center)
Crea forme geometriche in C#: ottieni una licenza gratuita
Puoi ottenere una licenza temporanea gratuita per provare questa libreria GIS C# senza limitazioni di valutazione.
Riassumendo
Hai imparato come creare forme geometriche in C# utilizzando Aspose.GIS for .NET. Inoltre, abbiamo implementato funzionalità come la creazione di poligoni, linee, linee curve e punti. Quindi, queste sono alcune disposizioni che abbiamo esplorato, c’è un’enorme quantità di altre interessanti funzionalità offerte da questa libreria C# GIS. Ti invitiamo a visitare la nostra documentazione, i riferimenti API e il repository GitHub per ulteriori approfondimenti.
Sentiti libero di contattarci
Puoi farci sapere le tue domande o dubbi sul nostro forum.