我正在尝试将3D Delaunay Tessallation(使用TetGen生成)转换为Voronoi图。我知道TetGen可以创建Voronoi Diagrams,但由于边界条件异常,我需要自己执行转换。
我完全被这里的二元性所困扰。我有四个中的两个:
我知道每个Delaunay面对应一个Voronoi边,我有面顶点,但是如何从中获得Voronoi边缘?
此外,每个Delaunay边对应一个Voronoi面,但是再次 - 如何找到与边对应的面?
答案 0 :(得分:2)
让我们考虑一下Delaunay三角剖分的优势。现在假设它不在输入点的凸包上。 考虑一个四面体入射到该边缘。你得到双面的第一点。然后选择入射到边缘的四面体中的两个三角形中的一个。穿过它,你将进入另一个四面体,它给你第二个面部。如果你像这样继续转动边缘(在同一个方向上),你将回到第一个四面体中,你将得到面部的描述。 如果边缘位于凸包上,则在描述面部时,您需要添加光线而不是段。
请注意,如果您有超过3个共球点,则某些四面体将对应相同的双Voronoi顶点。