N维凸多面体简单分解的快速算法

计算科学 算法 计算几何 delaunay三角剖分 凸包 voronoi 图
2021-11-28 13:27:01

我正在构建一个算法来计算一组点的 Voronoi 图,但我现在需要一种方法来将每个 Voronoi 单元分解为单纯形。我们掌握的信息是:

  1. 多面体的顶点
  2. 多面体的面及其顶点
  3. 一个中心点的位置
  4. 穿过面的径向线
  5. 多面体形成凸包的事实

主要问题是:

  1. 多面体的面可以是非单纯的

我们希望整个算法能够随着维度的增加而很好地扩展,但是每个 Voronoi 多面体的平均顶点数会随着维度的增加而增加。不幸的是,我找不到有关具体方法的有用信息。

编辑:虽然我没有增加具有维度的多面体顶点数量的公式,但测试表明它是O(5d).

如果所有面都是单纯的,我会从中心点到每个面绘制单纯形。我可以对非简单面进行三角剖分并应用上述算法,但我仍然有同样的问题,只是在较低维度上,因为每个面都具有上述属性,只是我们缺乏对其面的了解。

我目前正在通过Bowyer-Watson算法使用 Delaunay 三角剖分,因为这是我用于计算 Voronoi 图的方法。显然有更快的方法,但在我花太长时间实施其中一种方法之前,我觉得检查是否有我遗漏的众所周知的方法是明智的。

0个回答
没有发现任何回复~