3

如果多面体的所有节点(可能是非凸的)及其坐标已知,则按顺序给出面的点(逆时针或顺时针围绕外法线),我如何获得每个的外法线向量脸?

这是凸多面体的一种方法: 计算面法线和缠绕

一个可能是非凸的一般多面体怎么样?

4

1 回答 1

2

这是一种方法。修复多面体P的一个面 F0 的方向。你还不知道这是否是从外部逆时针,所以右手定则给出了叉积的向外法线。

现在将相邻面 F1 定向为与 F0 的方向兼容,因为共享边在 F0 中的方向为 →,在 F1 中为 ←。继续传播面的方向,直到P的每个面都与 F0 一致。所以现在所有法线要么指向内,要么都指向外。

现在通过对有符号四面体体积求和来计算P的体积。如果所有面都是逆时针方向,则体积将为正,如果全部为顺时针方向,则体积为负。如果结果为负,则反转所有面部方向。

计算签名体积遍布整个网络,包括此处: C 中的计算几何

于 2018-01-04T14:13:54.797 回答