1

如果我知道射线和平面上的一个点以及平面法线,我知道如何获得射线和平面之间的交点。

在我使用的代码中,平面表示为与原点的有符号偏移量,并且是正常的,我需要得到一些平面上的任何点。这该怎么做?

所以,平面方程:Ax + By + Cz + D = 0,我知道 A、B 和 C,这基本上是平面的法线,我知道 D,它是到原点的有符号距离。我的问题是,鉴于我如何在飞机上获得一些 3D 点?

谢谢

4

2 回答 2

2

如果 (A, B, C) 是归一化向量,则平面上最接近原始点的点就是:

(-AD,-BD,-CD)

从您的描述中可以很容易地知道(A,B,C)是平面法线,D是平面与原点之间的距离。

这种方法很简单,不需要任何分支。

平面上最靠近原点的点

于 2012-11-21T09:40:26.630 回答
0

您可以通过将平面与射线(线)相交来获得一个平面点 :-)

选择一些点P=(x,y,z),计算一下w=Ax+By+Cz

如果w=-DP在飞机上。

对于w!=-D,选择某个方向Q=(dx,dy,dz)l=Adx+Bdy+Cdz!=0例如q=(A,0,0),如果B!=0C!=0。比点P+l*Q/w在平面上。

于 2012-11-18T08:07:36.030 回答