【问题标题】:Divide self intersecting polygon (C Code)分割自相交多边形(C代码)
【发布时间】:2026-01-09 10:00:01
【问题描述】:

我想将一个自相交的多边形划分为简单的多边形。我将边缘和交点保存在数据结构(连接列表)中。

所以这里是一个例子。我有一个连接列表,其中包含边缘的 x、y 坐标和多边形的交点。根据picture 中的多边形,它将是 :: (1) -> (2) -> (3) ... -> (7)。我想要做的是得到简单多边形的边缘(这里是三角形)。在这种情况下 :: 1,2,7 / 3,4,5 / 5,6,7。

【问题讨论】:

  • 我建议你把这个问题再充实一点,至少用一个例子来展示数据结构,也许你已经开始了。欢迎来到 SO。

标签: algorithm geometry polygon


【解决方案1】:

我认为Bentley-Ottman 是您最好的选择。有一个很好的交互式可视化here。另一个很好的描述here

【讨论】: