Math 如何找到点和线之间的单位向量?
我有三个已知的三维点:Math 如何找到点和线之间的单位向量?,math,vector,rotational-matrices,Math,Vector,Rotational Matrices,我有三个已知的三维点:A、B和C 另外,我还有第四点,X X位于向量AB上,使得向量CX垂直于向量AB。所以AB·CX=0 如何找到CX的单位向量 这里的用例是我正在构造一个(平移的)旋转矩阵,其中原点是a,z轴穿过B,xz平面穿过THC,轴是正交的 我还有一个向量对象,它提供点积和叉积函数供我使用。Let U = (B-A)/||(B-A)|| 是沿a到B线的单位向量,其中|X |表示向量X的长度。现在我们可以通过 A + tU 我们想要 ((A + tU) - C)*U = 0 所以
A
、B
和C
另外,我还有第四点,X
X
位于向量AB
上,使得向量CX
垂直于向量AB
。所以AB·CX=0
如何找到CX的单位向量
这里的用例是我正在构造一个(平移的)旋转矩阵,其中原点是a,z轴穿过B,xz平面穿过THC,轴是正交的 我还有一个向量对象,它提供点积和叉积函数供我使用。Let
U = (B-A)/||(B-A)||
是沿a到B线的单位向量,其中|X |
表示向量X
的长度。现在我们可以通过
A + tU
我们想要
((A + tU) - C)*U = 0
所以
A*U - C*U + t = 0
t = C*U - A*U
我们已经解决了t
,现在我们让
V = (A+tU - C)/||A+tU - C||
我们有沿着直线的单位向量,
U
,还有一个与之正交的向量,V
,我认为这不适合堆栈溢出,它更多的是关于数学,对于数学溢出来说太简单了。此外,它几乎不先进。为什么不试一试呢?我已经试着试一试了,但我还没有取得任何进展……我的意思是人们应该试一试回答。我认为这是一个足够有效的问题。a*U
表示点积还是叉积?那么V=(a+(C·U-a·U)*U-C)/(a+(C·U-a·U)*U-C)
?@Eric-*
是点积,是的,你已经正确地扩展了它。这相当于规范化((a-C)+(C-a)·U*U)
?(注意-感谢@Mouagip注意到第一个等式中缺少的|
。)