Math 找到2个知道其叉积和一个约束的向量
我必须在三维空间中找到两个向量,Math 找到2个知道其叉积和一个约束的向量,math,vector,3d,linear-algebra,Math,Vector,3d,Linear Algebra,我必须在三维空间中找到两个向量,a和b这样的a x b=c,其中c是已知的。我还知道一个约束条件,假设a_y=0 所以我必须在(c_x)x+(c_y)y+(c_z)z=0平面上寻找这两个向量,对于向量a,我可以将它简化为(c_x)x+(c_z)z=0 对于向量b,因为它垂直于a,所以它必须在(a_x)x+(a_z)z=0平面和(c_x)x+(c_y)y+(c_z)z=0平面的交点上在添加叉积方程之后,我有4方程和5未知数(a_x,a_z,b_x,b_y,b_z)。我如何解决这个问题? 提前谢谢
a
和b
这样的a x b=c
,其中c
是已知的。我还知道一个约束条件,假设a_y=0
所以我必须在
(c_x)x+(c_y)y+(c_z)z=0
平面上寻找这两个向量,对于向量a
,我可以将它简化为(c_x)x+(c_z)z=0
对于向量
b
,因为它垂直于a
,所以它必须在(a_x)x+(a_z)z=0
平面和(c_x)x+(c_y)y+(c_z)z=0
平面的交点上在添加叉积方程之后,我有
4
方程和5
未知数(a_x,a_z,b_x,b_y,b_z)
。我如何解决这个问题?提前谢谢 编辑:也许解释一下我需要这些东西的原因会有所帮助。
我有相机的方向向量,我需要指向屏幕右侧的向量,第二个指向上
A,B=?
C=!
Ay=!
A x B = C
由垂直度引起的点和叉积的隐含性质:
(A.C) = 0
(B.C) = 0
|A|.|B| = |C|
长度设置为任何已知常数,如1
|A|=1
|B|=|C|
约翰·默勒在评论中也提到了这一点A
|A|=1
|B|=|C|
因此,| A |=1的长度和(A.C)=0的点积是垂直的,因此:
Ax^2 + Ay^2 + Az^2 = 1
Ax.Cx + Ay.Cy + Az.Cz = 0
这是由2
方程和2
未知数组成的系统,所以求解它。它将导致2
解决方案选择一个非零的解决方案
B
|A|=1
|B|=|C|
我们知道B
垂直于C
so(B.C)=0
,因此将约束放在一起:
A x B = C
Bx.Cx + By.Cy + Bz.Cz = 0
Bx^2 + By^2 + Bz^2 = Cx^2 + Cy^2 + Cz^2
如果展开叉积,将得到5
方程和3
未知数。因此,求解系统(选择非平凡方程的任意3
)Up
或North
…),并且所有向量的大小通常都是1
因此,假设D
向量是已知的对齐向量:
A'= C x D
B = C x A'
A = C x B
您可以更改操作数的顺序以获得所需的方向。如果D
未知,则您可以使用(1,0,0)
或(0,1,0)
或(0,0,1)
来选择与C
不平行的代码。。。或具有最大的(C.D)
。另请看:
(A.B)=Ax.Bx+Ay.By+Az.Cz
交叉积:
A x B
长度:
A=sqrt(Ax^2+Ay^2+Az^2)
A,B=?
C=!
Ay=!
A x B = C
由垂直度引起的点和叉积的隐含性质:
(A.C) = 0
(B.C) = 0
|A|.|B| = |C|
长度设置为任何已知常数,如1
|A|=1
|B|=|C|
约翰·默勒在评论中也提到了这一点A
|A|=1
|B|=|C|
因此,| A |=1的长度和(A.C)=0的点积是垂直的,因此:
Ax^2 + Ay^2 + Az^2 = 1
Ax.Cx + Ay.Cy + Az.Cz = 0
这是由2
方程和2
未知数组成的系统,所以求解它。它将导致2
解决方案选择一个非零的解决方案
B
|A|=1
|B|=|C|
我们知道B
垂直于C
so(B.C)=0
,因此将约束放在一起:
A x B = C
Bx.Cx + By.Cy + Bz.Cz = 0
Bx^2 + By^2 + Bz^2 = Cx^2 + Cy^2 + Cz^2
如果展开叉积,将得到5
方程和3
未知数。因此,求解系统(选择非平凡方程的任意3
)Up
或North
…),并且所有向量的大小通常都是1
因此,假设D
向量是已知的对齐向量:
A'= C x D
B = C x A'
A = C x B
您可以更改操作数的顺序以获得所需的方向。如果D
未知,则您可以使用(1,0,0)
或(0,1,0)
或(0,0,1)
来选择与C
不平行的代码。。。或具有最大的(C.D)
。另请看:
(A.B)=Ax.Bx+Ay.By+Az.Cz
交叉积:
A x B
长度:
| A |=sqrt(Ax^2+Ay^2+Az^2)
添加对A长度的假设(如A|x^2+A|z^2=1)应该可以做到这一点。@JohnMoeller我同意。。。我的答案基于它和向量的数学性质……加上一个关于a长度的假设(比如a_x^2+a_z^2=1)就可以了。@JohnMoeller我同意。。。我的答案基于它和向量的数学性质。。。