C# GIS ライブラリを使用して幾何学的図形を作成する

このガイドは、幾何学的図形をプログラムで描画する方法についてサポートを求めている .NET 開発者向けです。これらの図形には、多角形、点、線、曲線などが含まれます。そこで、図形の描画プロセス全体を自動化するソリューションの開発を目指します。この目的のために、強力な C# GIS ライブラリである Aspose.GIS for .NET を選択します。さらに、軽量で、プログラムによる操作やさまざまな種類の図形の作成のための多数の機能を提供します。次に、インストールと、C# で幾何学的図形を作成する方法の実装に進みます。

C# GIS ライブラリのインストール

Aspose.GIS for .NET は堅牢なインストールを提供します。DLL ファイルを ダウンロード するか、NuGet パッケージ マネージャーで次のコマンドを実行できます。これで完了です。

C# GIS ライブラリのインストール

.NET での曲線の描画 - コード サンプル

次の手順とコードサンプルは、Shapefile で曲線を描画する方法を示しています。

  • レイヤーを作成して開き、Create メソッドを呼び出して新しい機能を追加します。
  • ConstructFeature メソッドを呼び出して新しい機能を作成します。
  • MultiCurveクラスの新しいインスタンスを初期化します。
  • Add メソッドを呼び出して、コレクションに線分、円分、複合曲線を追加します。
  • フィーチャのジオメトリを設定します。
  • Add メソッドを呼び出して、レイヤーにフィーチャを追加します。
string path = "/CreateMultiCurve.shp";
// レイヤーを作成して開き、Create メソッドを呼び出して新しい機能を追加します。 
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // 新しい機能を作成するには、ConstructFeature メソッドを呼び出します。 
    var feature = layer.ConstructFeature();
    // MultiCurve クラスの新しいインスタンスを初期化します。       
    var multiCurve = new MultiCurve();
    // Add メソッドを呼び出して、コレクションに線分、円線、複合曲線を追加します。     
    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))"));
    // フィーチャのジオメトリを設定します。 
    feature.Geometry = multiCurve;
    // レイヤーにフィーチャを追加するには、Add メソッドを呼び出します。 
    layer.Add(feature);
}
.NET での曲線の描画

同様に、以下のコードサンプルに従って直線を描くこともできます。

  • LineStringクラスのインスタンスを作成します。
  • AddPointメソッドを呼び出して、線の端に点を追加します。
 string path = "/CreateLine.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // LineString クラスのインスタンスを作成します。     
    LineString line = new LineString();
    var feature = layer.ConstructFeature();
    // AddPoint メソッドを呼び出して、線の端に点を追加します。
    line.AddPoint(78.65, -32.65);
    line.AddPoint(-98.65, 12.65);
    feature.Geometry = line;
    layer.Add(feature);
}
dotnet での線描画

プログラムでポリゴンを作成する - コードサンプル

次に、このセクションでは、Aspose.GIS for .NET を使用して C# でポリゴンを作成する方法を示します。

  • Polygonクラスのオブジェクトをインスタンス化します。
  • LinearRingクラスのインスタンスを作成します。
  • AddPointメソッドを呼び出して、線の末尾に点を追加します。
  • ExteriorRingプロパティの値を設定して外部リングを設定します。
string path = "/CreatePolygons.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // Polygon クラスのオブジェクトをインスタンス化します。
    Polygon polygon = new Polygon();
    // LinearRing クラスのインスタンスを作成します。
    LinearRing ring = new LinearRing();
    // 線の末尾にポイントを追加します。        
    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);
    // ExteriorRing プロパティの値を設定して外部リングを設定します。
    polygon.ExteriorRing = ring;
    var feature = layer.ConstructFeature();
    feature.Geometry = polygon;
    layer.Add(feature);
}
プログラムでポリゴンを作成する

幾何学的点の生成 - コードサンプル

この C# GIS ライブラリは、プログラムで幾何学的ポイントを作成するためのメソッドを提供します。

  • MultiPoint クラスのインスタンスを作成し、Add メソッドを呼び出してポイントを作成します。
string path = "/CreatePoints.shp";
using (VectorLayer layer = VectorLayer.Create(path, Drivers.Shapefile))
{
    // MultiPoint クラスのインスタンスを作成し、Add メソッドを呼び出してポイントを作成します。 
    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);
}
幾何学的点を生成する

C# で幾何学図形を作成する - 無料ライセンスを取得する

無料の一時ライセンスを取得して、評価制限なしでこの C# GIS ライブラリを試すことができます。

まとめ

Aspose.GIS for .NET を使用して C# で幾何学的図形を作成する方法を学びました。さらに、多角形、線、曲線、ポイントの作成などの機能を実装しました。これらは私たちが調べたいくつかの機能であり、この C# GIS ライブラリには他にも多くの優れた機能が用意されています。さらに詳しく知りたい場合は、ドキュメントAPI リファレンス、GitHub リポジトリにアクセスすることをお勧めします。

お気軽にお問い合わせください

ご質問やご不明な点がございましたら、フォーラムまでお寄せください。

参照