画家定理内外测试

Painter's theorem inside and outside test

我读过赫恩和贝克的计算机绘图书。我阅读了下面给出的图像的测试#2 画家定理。 Painter's theorem of test#2 image from Hearn and Baker

此图像显示表面 S 完全位于表面 S' 之后,通过检查将 S(x, y,z) 的所有顶点的坐标代入 S' 的平面方程并检查符号。如果 S 的所有顶点都在 S' 内部,则 S 在 S' 之后。 (图1).

我。 e. Ax + By+ Cz + D < 0 ,x, y, z 是 S 个顶点。

但我从 this websites 那里读到,它以完全相反的方式展示了这个概念。 参见 this image 我从那个网站上读到的,它在同一张图片上显示相反的东西。这场演出 S 的所有顶点都在 S' 之外。

我。 e. Ax + By+ Cz + D > 0 ,x, y, z 是S个顶点。

我的问题是,赫恩和贝克怎么可能说 S 完全在表面 S' 内,而我提到的网站说 S 在平面方程的符号检验之外在 S' 之外?

距离的符号取决于S的方向。让我解释一下发生了什么。当您将 S 的点代入 S' 平面的“隐式”方程时,您会得到从该点到 S' 平面的 signed 距离。该距离是最短的,因为它沿着 S' 平面的 法向量 的方向。

现在,S' 平面的法向量有两个 可能的方向。假设您使用任何合适的方法计算法向量 N,那么该向量的负数 -N 也是平面的法向量,即您可以使用 N 或 -N 形成有效的平面方程。

通常在计算机图形学中,法向量的意义是由多边形顶点的顺序决定的。如果它们是顺时针的,则正常是 -N(按照惯例),如果顺序是逆时针,则正常是 N(按照惯例)。无论如何,通常 space 中的所有平面都应具有相同的方向,因此您无需关心这一点。

所以符号上的差异可以看作是平面方向的差异(CW v.s。CCW)或坐标系的差异(例如,右手v.s。左手坐标系)。因此,在充分的假设下,两者都是正确的。最后,选择方向是技术或实现细节。