哪种数据结构可以处理2d线段
Which data structure can handle 2d line segments
我有一个庞大的二维线段列表。我想为给定的线段找到最近的线段,然后存储在向量中。所以,我想对每一个线段都这样做,这样我就知道任何线段的最近线段。我所有的线段都是矢量形式,也就是说,我知道两个端点的坐标。所以在我的数据行号中,begin(x,y,z),end(x,y,z)在那里。
为了获得线段,我想检查线段和另一个线段的终点之间的距离(这个)。
我认为可能有一些数据结构,所有这些事情都发生了,并给出了矢量线段编号的矢量,或者其他识别接近线段的方法。我知道kd-tree(k-最近)也可以做类似的事情。但它适用于点数据。
我试图用opencv-r-tree函数来解决这个问题。但由于我没有任何使用r-tree的经验,我以前无法使用,现在我很困惑,因为它涉及分类器,并且有一个训练阶段。但就我的情况而言,我觉得我不希望这样的事情发生。
如果有人知道任何函数、代码或库可以做这类事情,请告诉我。
虽然OpenCV没有线段的数据结构,但以下方法足够好。
struct LineSegment{
Point2f a,b;
};
相关文章:
- 警告处理为错误这里有什么问题
- 在C#中处理C++指针而不使用unsafe的最佳方法
- 2D数组来自文本输入,中间有空格
- 处理多个异常集合的C++方法
- 将值指定给向量(2D)的向量中的某个位置
- 找不到成员对象:没有名为get_event()的成员,也处理多态性和向量
- 使用流处理接收到的数据
- 如何处理以 2D 数组编写的条件
- 处理2D数组时的分割故障
- C++图像处理 - 将图像文件读入 2D 数组
- 在 for 循环中创建多个线程以处理 2D 数组
- 使用形状参数时,如何灵活地使用可以处理 2D 和 3D 形状的方法参数
- 如何处理 2D opengl 项目的纹理
- 设置碰撞检测,然后在 2D 游戏中处理碰撞
- 在c++中进行线程处理,在2d数组中找到最大的条目
- 未处理的异常访问违反2D DirectX渲染D2D1.dll
- 2D数组和文件处理[C++]
- 寻找一种可以替代python的处理速度:2D量子粒子
- 哪种数据结构可以处理2d线段
- C++:以对角线方式处理2d数组元素