可见性与链接路径相关算法解析
在几何计算领域,可见性和链接路径的计算是重要的研究方向。本文将详细介绍计算多边形内最小链接路径、简单多边形的链接中心和半径以及最小嵌套多边形的相关算法。
1. 多边形内最小链接路径计算
计算带有孔洞的多边形 (P) 内两个给定点之间的最小链接路径,其算法时间复杂度为 (O(Eα(n) log^2 n)),其中 (E) 是 (P) 的可见性图中的边数,(α(n)) 是阿克曼函数的反函数。具体步骤如下:
1. 计算可见性 :考虑包含点 (s) 的三角形,以其各边为底,遍历漏斗序列定位从 (s) 可见的 (P) 的顶点,然后遍历 (P) 的可见性图计算 (R_1) 的所有构造边 (E_1),此步骤耗时 (O(n))。
2. 其他步骤时间分析 :步骤 3 耗时 (O(Eα(n) log^2 n)),步骤 4 耗时 (O(Eα(n))),因为 (Q_0, Q_1, \cdots, Q_{m - 2}) 边界上的边总数可能为 (O(Eα(n))),其中 (m) 是 (s) 和 (t) 之间的链接距离。步骤 5 中,以计算 (V(s)) 的相同方式计算从 (t) 出发的 (P) 的可见性多边形 (V(t)),测试给定线段是否在 (V(t)) 内的时间为 (O(log |V(t)|)),测试 (Q’ 0, Q’_1, \cdots, Q’ {m - 2}) 的所有边直到 (t) 可见的总时间为 (O(n log n))。所有 (R_1, R_2, \cdots, R_{m - 1}) 的构造边可在 (O(E)) 时间内计算完成。
超级会员免费看
订阅专栏 解锁全文
1420

被折叠的 条评论
为什么被折叠?



