Twórz kształty geometryczne za pomocą biblioteki C# GIS

Ten przewodnik jest przeznaczony dla programistów .NET, którzy szukają pomocy w programowym rysowaniu kształtów geometrycznych. Kształty te obejmują wielokąty, punkty, linie, linie krzywe i inne. Skupmy się zatem na opracowaniu rozwiązania, które automatyzuje cały proces rysowania kształtów. Dlatego w tym celu zdecydujemy się na Aspose.GIS for .NET, który jest potężną biblioteką C# GIS. Co więcej, jest lekki i oferuje szereg funkcji do manipulacji programowej i tworzenia różnego rodzaju kształtów. Teraz przejdziemy do instalacji, a następnie implementacji tworzenia kształtów geometrycznych w języku C#.

Instalacja biblioteki C# GIS

Aspose.GIS for .NET oferuje solidną instalację, pobierz plik DLL lub możesz wykonać następujące polecenie w NuGet Menedżerze pakietów. Otóż to.

Instalacja biblioteki C# gis

Rysowanie linii krzywych w .NET — przykładowy kod

Poniższe kroki i przykładowy kod pokazują, jak rysować zakrzywione linie w Shapefile.

  • Utwórz warstwę i otwórz ją, aby dodać nowe funkcje, wywołując metodę Create.
  • Wywołaj metodę ConstructFeature, aby utworzyć nowy obiekt.
  • Zainicjuj nową instancję klasy MultiCurve.
  • Wywołaj metodę Add, aby dodać do kolekcji ciąg linii, ciąg kołowy i krzywą złożoną.
  • Ustaw Geometrię obiektu.
  • Wywołaj metodę Add, aby dodać obiekt do warstwy.
string path = "/CreateMultiCurve.shp";
// Utwórz warstwę i otwórz ją, aby dodać nowe funkcje, wywołując metodę Create. 
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Wywołaj metodę ConstructFeature, aby utworzyć nową funkcję. 
    var feature = layer.ConstructFeature();
    // Zainicjuj nową instancję klasy MultiCurve.       
    var multiCurve = new MultiCurve();
    // Wywołaj metodę Add, aby dodać do kolekcji ciąg liniowy, ciąg kołowy i krzywą złożoną.     
    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))"));
    // Ustaw geometrię elementu. 
    feature.Geometry = multiCurve;
    // Wywołaj metodę Add, aby dodać obiekt do warstwy. 
    layer.Add(feature);
}
rysowanie linii krzywych w .NET

Podobnie możesz rysować linie proste, postępując zgodnie z przykładowym kodem wymienionym poniżej:

  • Utwórz instancję klasy LineString.
  • Dodaj punkty na końcach linii wywołując metodę AddPoint.
 string path = "/CreateLine.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Utwórz instancję klasy LineString.     
    LineString line = new LineString();
    var feature = layer.ConstructFeature();
    // Dodaj punkty na końcach linii, wywołując metodę AddPoint.
    line.AddPoint(78.65, -32.65);
    line.AddPoint(-98.65, 12.65);
    feature.Geometry = line;
    layer.Add(feature);
}
rysowanie linii w dotnet

Programowo utwórz wielokąt — przykładowy kod

Następnie w tej sekcji pokazano tworzenie wielokąta w C# przy użyciu Aspose.GIS for .NET.

  • Utwórz instancję obiektu klasy Polygon.
  • Utwórz instancję klasy LinearRing.
  • Dodaj punkty na końcu linii wywołując metodę AddPoint.
  • Ustaw pierścień zewnętrzny, ustawiając wartość właściwości ExteriorRing.
string path = "/CreatePolygons.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Utwórz instancję obiektu klasy Polygon.
    Polygon polygon = new Polygon();
    // Utwórz instancję klasy LinearRing.
    LinearRing ring = new LinearRing();
    // Dodaje punkty na końcu linii.        
    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);
    // Ustaw pierścień zewnętrzny, ustawiając wartość właściwości ExteriorRing.
    polygon.ExteriorRing = ring;
    var feature = layer.ConstructFeature();
    feature.Geometry = polygon;
    layer.Add(feature);
}
Programowo utwórz wielokąt

Generuj punkty geometryczne — przykładowy kod

Ta biblioteka C# GIS oferuje metody programowego tworzenia punktów geometrycznych:

  • Utwórz instancję klasy MultiPoint i wywołaj metodę Add, aby utworzyć punkty.
string path = "/CreatePoints.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Utwórz instancję klasy MultiPoint i wywołaj metodę Add, aby utworzyć punkty. 
    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);
}
Generuj punkty geometryczne

Twórz kształty geometryczne w języku C# — uzyskaj bezpłatną licencję

Możesz otrzymać bezpłatną licencję tymczasową, aby wypróbować tę bibliotekę C# GIS bez ograniczeń ewaluacyjnych.

Podsumowując

Nauczyłeś się tworzyć kształty geometryczne w języku C# przy użyciu Aspose.GIS for .NET. Dodatkowo wdrożyliśmy funkcjonalności takie jak tworzenie wielokątów, linii, linii krzywych i punktów. Oto kilka przepisów, które sprawdziliśmy. Istnieje ogromny stos innych ciekawych funkcji oferowanych przez tę bibliotekę GIS w języku C#. Zachęcamy do odwiedzenia naszej dokumentacji, API referencji i GitHub w celu dalszej eksploracji.

Skontaktuj się z nami

Możesz dać nam znać o swoich pytaniach lub wątpliwościach na naszym forum.

Zobacz też