计算位于3D平面上的矢量

时间:2010-01-10 00:47:38

标签: math 3d

我有一个由两个3D矢量定义的3D平面:

  • P =位于飞机上的点
  • N =平面的表面正常

我想计算飞机上的任何矢量。

3 个答案:

答案 0 :(得分:3)

任意矢量v与N不平行,其矢量叉积与N(w1 = v x N)是平行于平面的矢量。

你也可以取w2 = v - N(v.N)/(N.N),即v投影到平面。

然后可以通过x = P + a w给出平面中的点。事实上,平面中的所有点都可以表示为 x = P + a w2 + b(w2 x N) 只要w2是“适合”的v ..不能记住确切的条件而且懒得去解决它;)

如果要确定某个点是否位于平面中而不是在平面中找到一个点,则可以使用

x.N = P.N

对于飞机上的所有x。

答案 1 :(得分:1)

如果N =(xn,yn,zn)和P =(xp,yp,zp),那么平面方程由下式给出:

(x-xp,y-yp,z-zp)*(xn,yn,zn)= 0

其中(x,y,z)是平面的任何一点,*表示内积。

答案 2 :(得分:1)

  

我想计算任何矢量   在飞机上。

如果我理解正确您需要检查点是否属于飞机?

http://en.wikipedia.org/wiki/Plane_%28geometry%29

你桅杆检查这个等式:nx(x - x0)+ ny(y - y0)+ nz(z - z0)= 0是否适用于你的观点。

其中:[nx,ny,nz]是法线向量,[x0,y0,z0]是给定点,[x,y,z]是你要检查的点。

<强> //修改 现在我明白了你的问题。你需要两个线性独立的矢量作为平面基础。播种您需要休息迈克尔安德森回答者,但您必须添加第二个向量并使用该向量的组合。更多:http://en.wikipedia.org/wiki/Basis_%28linear_algebra%29