广义楼梯多边形与 1 - 平面图的可视化表示
广义楼梯多边形的重建
在重建广义楼梯多边形时,我们可以通过考虑满足特定可见性约束的情况来减少候选直方图的数量。具体来说,如果一个矩形的底部顶点能看到另一个矩形的顶部顶点,那么这两个矩形的方向是固定的,即它们必须位于相反的楼梯上(一个上升楼梯和一个下降楼梯)。
每个矩形都与某个叶矩形的方向是固定的,因为其底部顶点可以看到一个标签顶点。因此,对叶矩形进行排序和定向会诱导出整个树的排序和定向。对于所有叶矩形,有 $O(k!2^k)$ 种这样的排序和定向方式,其中 $k$ 是标签的数量。
对于双楼梯,树 $T$ 是一条路径,并且根矩形与其他每个矩形的方向都是固定的。对于直方图,也有类似的性质,即直方图的基矩形与树 $T$ 左右脊柱上的所有矩形的方向是固定的。
我们可以基于这些性质设计一个递归算法来重建直方图:
1. 固定基矩形的方向,这将确定树 $T$ 左右脊柱上的矩形及其方向。
2. 递归地计算剩余子树中矩形的排序和方向。
如果我们计算出树 $T$ 的左右脊柱,就可以确定第一个和最后一个标签以及它们的标签边的方向。这样,我们只需要检查 $(k - 2)!2^{k - 2}$ 种剩余的排序和方向,其中 $k$ 是标签的数量。这使得具有 $k \geq 2$ 个标签的直方图的整体重建时间为 $O(n^2m + (k - 2)!2^{k - 2}(n \log n + m))$。
我们还可以通过在树结构上定义递归来推广需要考虑的排序数量。设 $v \in T$,$C(v)$ 是 $v$ 在 $T$ 中的子节点,$d(v) = |C(v)|$。如果 $v$ 对应的矩形方
1-平面图的3D可见性表示
超级会员免费看
订阅专栏 解锁全文
2238

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



