本指南適用於尋求以程式設計方式繪製幾何形狀的協助的 .NET 開發人員。這些形狀包括多邊形、點、線、曲線等。因此,我們的目標是開發一種解決方案,使繪製形狀的整個流程自動化。因此,為此,我們將選擇Aspose.GIS for .NET,這是一個功能強大的C# GIS函式庫。此外,它是輕量級的,並提供了一系列用於程式操作和創建各種類型形狀的功能。現在,我們將開始安裝,然後實現如何在 C# 中製作幾何形狀。
C# GIS程式庫安裝
Aspose.GIS for .NET 提供可靠的安裝,下載 DLL 文件,或者您可以在 NuGet 套件管理器中執行以下命令。就是這樣。
.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);
}
同樣,您可以按照下面提到的程式碼範例繪製直線:
- 建立 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);
}
以程式設計方式建立多邊形 - 程式碼範例
接下來,本節展示如何使用 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 儲存庫以進行進一步探索。
請隨時聯繫我們
您可以在我們的論壇上告訴我們您的問題或疑問。