小编ske*_*eks的帖子

扫描线多边形三角剖分:如何找到当前顶点左侧的边?

我目前正在编写 y 单调扫描线算法来对非凸多边形进行三角测量。实现此目的的第一步是使多边形 y 单调。

MakeMonotone《Mark de Berg 的计算几何》一书的伪代码( https://archive.org/details/computationalgeo00berg):

MakeMonotone 伪代码

现在回答我的问题:

在那本书和我发现的所有其他网站中,没有解释如何对提到的“二叉搜索树T ”中的边进行精确排序。参考书中唯一提到的是“ T的叶子从左到右的顺序对应于边从左到右的顺序”。但是,该树中的边是按什么属性/属性排序的呢?我也不清楚,二叉树中的边应该如何准确地表示(起点?终点?两者的组合?)。

我最幼稚的方法是找出T中所有边与扫掠线和直线的交点,并计算其中哪一条最接近当前顶点。但考虑到在每本书/大学幻灯片中,T的内部工作原理都没有进一步解释,所以它一定要容易得多。

二叉搜索树应支持以下操作:

  • 插入新边
  • 查找当前扫掠线上顶点左侧的边
  • 删除一条边

geometry polygon triangulation computational-geometry non-convex

5
推荐指数
1
解决办法
935
查看次数