Vytvářejte geometrické tvary pomocí knihovny GIS C#

Tato příručka je určena pro vývojáře .NET, kteří hledají pomoc při programovém kreslení geometrických tvarů. Tyto tvary zahrnují mnohoúhelníky, body, čáry, zakřivené čáry a další. Zaměřme se tedy na vývoj řešení, které automatizuje celý proces kreslení tvarů. Proto se pro tento účel rozhodneme pro Aspose.GIS for .NET, což je výkonná knihovna C# GIS. Navíc je lehký a nabízí spoustu funkcí pro programovou manipulaci a vytváření různých typů tvarů. Nyní přejdeme k instalaci a poté implementaci toho, jak vytvářet geometrické tvary v C#.

Instalace knihovny C# GIS

Aspose.GIS for .NET nabízí robustní instalaci, stáhnout soubor DLL nebo můžete spustit následující příkaz ve Správci balíčků NuGet. A je to.

Instalace knihovny C# gis

Kreslení křivek v .NET – ukázka kódu

Následující kroky a ukázka kódu ukazují, jak nakreslit zakřivené čáry v Shapefile.

  • Vytvořte vrstvu a otevřete ji pro přidání nových funkcí voláním metody Create.
  • Vyvoláním metody ConstructFeature vytvořte nový prvek.
  • Inicializujte novou instanci třídy MultiCurve.
  • Vyvoláním metody Add přidáte do kolekce čárový řetězec, kruhový řetězec a složenou křivku.
  • Nastavte Geometrie prvku.
  • Vyvoláním metody Add přidáte prvek do vrstvy.
string path = "/CreateMultiCurve.shp";
// Vytvořte vrstvu a otevřete ji pro přidání nových funkcí voláním metody Create. 
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Chcete-li vytvořit nový prvek, vyvolejte metodu ConstructFeature. 
    var feature = layer.ConstructFeature();
    // Inicializujte novou instanci třídy MultiCurve.       
    var multiCurve = new MultiCurve();
    // Vyvoláním metody Add přidáte do kolekce čárový řetězec, kruhový řetězec a složenou křivku.     
    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))"));
    // Nastavte geometrii prvku. 
    feature.Geometry = multiCurve;
    // Vyvoláním metody Add přidáte prvek do vrstvy. 
    layer.Add(feature);
}
kreslení křivek v .NET

Podobně můžete kreslit rovné čáry podle níže uvedeného příkladu kódu:

  • Vytvořte instanci třídy LineString.
  • Přidejte body na konce řádku voláním metody AddPoint.
 string path = "/CreateLine.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Vytvořte instanci třídy LineString.     
    LineString line = new LineString();
    var feature = layer.ConstructFeature();
    // Přidejte body na konce řádku voláním metody AddPoint.
    line.AddPoint(78.65, -32.65);
    line.AddPoint(-98.65, 12.65);
    feature.Geometry = line;
    layer.Add(feature);
}
kreslení čar v dotnet

Programově vytvořit mnohoúhelník – ukázka kódu

Dále tato část ukazuje vytvoření polygonu v C# pomocí Aspose.GIS for .NET.

  • Vytvořte instanci objektu třídy Polygon.
  • Vytvořte instanci třídy LinearRing.
  • Přidejte body na konec řádků voláním metody AddPoint.
  • Nastavte vnější prstenec nastavením hodnoty vlastnosti ExteriorRing.
string path = "/CreatePolygons.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Vytvořte instanci objektu třídy Polygon.
    Polygon polygon = new Polygon();
    // Vytvořte instanci třídy LinearRing.
    LinearRing ring = new LinearRing();
    // Přidá body na konec řádků.        
    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);
    // Nastavte vnější prstenec nastavením hodnoty vlastnosti ExteriorRing.
    polygon.ExteriorRing = ring;
    var feature = layer.ConstructFeature();
    feature.Geometry = polygon;
    layer.Add(feature);
}
Programově vytvořte mnohoúhelník

Generování geometrických bodů – ukázka kódu

Tato knihovna C# GIS nabízí metody pro programové vytváření geometrických bodů:

  • Vytvořte instanci třídy MultiPoint a zavolejte metodu Add pro vytvoření bodů.
string path = "/CreatePoints.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Vytvořte instanci třídy MultiPoint a zavolejte metodu Add pro vytvoření bodů. 
    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);
}
Generování geometrických bodů

Vytvářejte geometrické tvary v C# – získejte bezplatnou licenci

Můžete získat zdarma dočasnou licenci k vyzkoušení této knihovny C# GIS bez omezení hodnocení.

Shrnutí

Naučili jste se vytvářet geometrické tvary v C# pomocí Aspose.GIS for .NET. Kromě toho jsme implementovali funkce, jako je vytváření polygonů, čar, zakřivených čar a bodů. Toto je několik ustanovení, která jsme prozkoumali, existuje obrovská hromada dalších skvělých funkcí, které nabízí tato knihovna C# GIS. Doporučujeme vám navštívit naše dokumentace, API refs a GitHub repo pro další průzkum.

Neváhejte a oslovte nás

Můžete nám dát vědět o svých otázkách nebo dotazech na našem fóru.

Viz také