OpenCvSharp.Point[][] 转成 OpenCvSharp.Point[]
时间: 2023-09-09 18:08:12 浏览: 52
可以通过 LINQ 中的 `SelectMany` 方法将 `OpenCvSharp.Point[][]` 转换为 `OpenCvSharp.Point[]`。示例如下:
```csharp
using OpenCvSharp;
using System.Linq;
// 假设存在一个 Point[][] 变量 points
Point[] flattenedPoints = points.SelectMany(x => x).ToArray();
```
这里使用了 `SelectMany` 方法来将 `points` 数组中的每个子数组中的元素合并为一个新的数组。最后通过 `ToArray` 方法将合并后的结果转换为 `OpenCvSharp.Point[]` 数组类型。
相关问题
OpenCvSharp.Point 添加元素
OpenCvSharp.Point 是一个表示二维平面上点的结构体,它有两个属性 X 和 Y,分别表示点在横轴和纵轴上的坐标。你可以通过修改 X 和 Y 的值来改变 Point 结构体的值。
要向 Point 中添加元素,可以使用以下代码:
```
// 创建一个 Point 结构体
OpenCvSharp.Point point = new OpenCvSharp.Point(10, 20);
// 添加元素
point.X += 5;
point.Y += 5;
```
在上面的代码中,我们首先创建了一个 Point 结构体,并初始化了它的 X 和 Y 属性。然后,我们使用 `+=` 运算符将 X 和 Y 的值增加了 5。这样就实现了向 Point 中添加元素的目的。
Vector2[] 转换 OpenCvSharp.Point[]
要将 `Vector2[]` 转换为 `OpenCvSharp.Point[]`,你需要遍历 `Vector2[]` 数组,并将每个 `Vector2` 对象的坐标值转换为对应的 `OpenCvSharp.Point` 对象。
以下是一种可能的实现方式:
```csharp
Vector2[] vectorPoints = new Vector2[]
{
new Vector2(1, 2),
new Vector2(3, 4),
new Vector2(5, 6)
};
OpenCvSharp.Point[] opencvPoints = new OpenCvSharp.Point[vectorPoints.Length];
for (int i = 0; i < vectorPoints.Length; i++)
{
opencvPoints[i] = new OpenCvSharp.Point((int)vectorPoints[i].x, (int)vectorPoints[i].y);
}
// 现在,opencvPoints 是将 vectorPoints 转换为 OpenCvSharp.Point[] 后的结果
```
这段代码创建了一个包含 `Vector2` 坐标的数组 `vectorPoints`。然后,创建了一个相同长度的空的 `OpenCvSharp.Point[]` 数组 `opencvPoints`。通过遍历 `vectorPoints` 数组,并将 `Vector2` 对象的 `x` 和 `y` 坐标值转换为整数后赋值给对应的 `OpenCvSharp.Point` 对象,从而完成了转换。现在,你可以使用 `opencvPoints` 数组进行后续的操作。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)