3

我有兴趣寻找软件来计算 3D 多面体的精确中轴(或您选择的术语!)。我想输出将是一个三角形面列表,可能是边和顶点,代表内侧表面的连接点、薄片和接缝。理想情况下,我想要可以处理所有多面体的东西,包括凹形(此时三角形面还不够),但我很高兴找到可以处理凸多面体的东西。

先说一下我知道的软件:

有多种“近似”方法可用,它们假设我正在变换的形状是一个复杂的表面,并且通过在表面上散布密集点来实现。
其中一种方法是http://www.cs.ucdavis.edu/~amenta/powercrust.html提供的powercrust软件 (虽然应该如何为这个软件定义点文件以便正确处理凹面情况,但我不是当然)

另一种近似方法集成到 Tight Cocone (http://www.cse.ohio-state.edu/~tamaldey/cocone.html)。这再次将点密集分布在表面上,并使用 voronoi 图收敛到中轴。有一个“改进的 CAD 模型中轴”版本,它利用了表面完全已知的事实。然而,这种改进的模型并未并入分布式代码中。

有一个 Matlab 代码,例如 Gianni Schena (http://www.mathworks.com/matlabcentral/fileexchange/4917-skeleton-in-3d) 的“3D 骨架”,它使用了几个基于距离的简单方法转换。还是近似的。

显然,近似方法可能会受到某些类型的数值不稳定性的影响,从而使表面出现“尖峰”。此外,它们会生成非常大的面和顶点数据结构。我想要的是一个多面体(如立方体)的中轴/表面的精确表示,它应该有一个非常简单和小的数据结构。

在 [2004, Culver, Keyser, and Manocha, Exact Computation of the Medial Axis of a Polyhedron] 中,发表了一种计算多面体精确中轴的方法。但是,我找不到任何有人实际实现了这种方法的软件。

有人知道什么,或者有什么可以添加到我对 3D 内表面软件的小尝试中吗?

4

1 回答 1

4

检查 SIGGRAPH 2010 中 Miklos 的 3D 比例轴变换。Sigma 控制比例,在 1 时它是精确的中间轴,但要去除内侧毛发,您只需稍微增加它...

于 2011-09-30T22:33:38.023 回答