use*_*942 2 raytracing game-engine computational-geometry
我正在阅读其他人的代码,他将平面表示为法线和偏移,但我不确定该偏移是什么.我想这是从世界起源到飞机中心的距离?
谢谢
最有可能的是它是从世界起源到飞机的"距离".不是"飞机中心"(什么是"飞机中心"?),而是飞机本身.
我将"距离"这个词放入引号,因为它可能会证明你的"距离"没有标准化,即它乘以某个因子.
你可能知道,3D平面的方程是
A*x + B*y + C*z + D = 0
Run Code Online (Sandbox Code Playgroud)
(A, B, C)法线向量在哪里,D实际上是从原点到平面的符号距离.然而,D将代表当且仅当矢量定期欧几里德距离 (A, B, C)被归一化,即,的值A,B,C和D被缩放以便|(A, B, C)| = 1.如果矢量未标准化,则D距离乘以|(A, B, C)|.
有时,术语"偏移"用于表示D非标准化平面方程中的系数.换句话说,有可能在你的情况下,飞机可以简单地通过其代表A,B,C和D系数.无论他们是否正常化 - 你必须检查自己.