在角度90处找到矢量以输入矢量

时间:2014-02-14 13:25:44

标签: c# geometry

我有随机位置的输入向量,我想在这个向量的90度找到一个向量。我知道有无限的向量来实现这种情况,但我只需要一个,无论哪一个。

enter image description here

2 个答案:

答案 0 :(得分:4)

计算向量和随机其他向量之间的cross product

答案 1 :(得分:1)

我为v=(x,y,z)做了什么我使用以下算法来获得两个垂直向量

if x<>0 or y<>0
   n_1 = (-x*z, -y*z, x^2+y^2 )
   n_2 = (-y, x, 0 )
else
   n_1 = (1, 0, 0)
   n_2 = (0, 1, 0)

显示点积为零。

n_1·v = (-x*z,-y*z,x^2+y^2)·(x,y,z) = -x^2*z-y^2*z+(x^2+y^2)*z = 0
n_2·v = (-y, x, 0)·(x,y,z) = -y*x+x*y+0 = 0