使用 C# GIS 库制作几何形状

本指南适用于寻求以编程方式绘制几何形状帮助的 .NET 开发人员。这些形状包括多边形、点、线、曲线等。因此,我们的目标是开发一种解决方案,使绘制形状的整个过程自动化。因此,为此,我们将选择 Aspose.GIS for .NET,这是一个功能强大的 C# GIS 库。此外,它重量轻,并提供了许多用于编程操作和创建各种形状类型的功能。现在,我们将开始安装,然后介绍如何在 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# 中创建多边形。

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 存储库以进行进一步探索。

欢迎随时联系我们

您可以在我们的论坛上告诉我们您的问题或疑问。

也可以看看