如何在3d点使用delaunay三角测量?

问题描述 投票:0回答:3

我明白如何在2d点使用delaunay三角测量? 但是如何在3d点使用delaunay三角测量? 我的意思是我想生成表面三角形网格而不是四面体网格,那么我如何使用delaunay三角剖分来生成三维表面网格? 请给我一些提示。

polygon computational-geometry mesh triangulation delaunay
3个回答
1
投票

要对3D点云进行三角测量,您需要BallPivoting算法:https://vgc.poly.edu/~csilva/papers/tvcg99.pdf


0
投票

Delaunay四面体化不符合两个原因

  • 它用四面体填充体积,而不是定义表面,
  • 它填充了点的凸包,这可能不是你所期望的。

要解决第二个问题,您需要接受凹陷,这意味着您需要指定一个参考比例来说明您想要的详细程度。这导致了Alpha Shapes的概念,它是作为面部的子集获得的。

在图像搜索引擎中查找“Alpha Shape”。


0
投票

3D三角测量有两个含义。一个是当整个空间被填满时,可能使用四面体(六面体和其他也可以使用)。另一种叫做2.5D,通常用于地形,其中z是颜色或其他的属性,不影响产生的三角测量。

如果你使用Shewchuk的triangle,你可以得到结果。

如果你有足够的好奇心,你将能够选择那些一面不与其他四面体共享的四面体。这些是与无限/封闭点“连接”的相同四面体。提取这些面,您就可以进行3D表面三角测量。

如果你想要“直接”表面重建,那么你无疑需要事先知道总给定中的哪些顶点在表面中。如果您不了解它们,也许“最大值方法”允许找出它们。

一个你的点云只包括表面顶点,三角测量方法可以是你喜欢的任何一个,从(改编的)增量Chew's,Ruppert等到“ball-pivoting”方法和“行进立方体”方法。

© www.soinside.com 2019 - 2024. All rights reserved.