Python 检测网格中的对齐线段

Python detect aligned segments in a mesh

我正在寻找一种方法来检测大致成一直线的网格线段。

我有一组 points 由它们的 x, y 坐标定义:

然后我执行 Delaunay 三角剖分:

如您所见,网格的许多元素正在形成准线。我想找到一种可靠的方法来检测这些准线...

我试图通过笛卡尔方程 y = m.x+b 定义网格的每一段,并使用阈值系统解析值 alpha = arctan(m)(角度)和 b,但是我的结果很差:

您检测到最多这些行的策略是什么?

访问每条边并(使用您拥有的拓扑信息)找到与其共享端点的边。保留形成最佳排列的那些。如果对齐在一定公差范围内,则认为这些边是相连的。

处理完整个三角剖分后,您将得到一组包含对齐的链表。