点と線の間の単位ベクトルを見つけるにはどうすればよいですか?
-
01-10-2019 - |
質問
知っているのは3つあります 3次元の ポイント: A
, B
, 、 そして C
.
さらに4つ目のポイントがありますが、 X
.
X
ベクトル上にあります AB
そのようなベクトル CX
ベクトルに垂直です AB
. 。それで AB · CX = 0
CX の単位ベクトルを見つけるにはどうすればよいですか?
ここでのユースケースは、原点が A、z 軸が B を通過、xz 平面が C を通過し、軸が直交する (変換された) 回転行列を構築していることです。
また、自由にドット関数と外積関数を提供するベクトル オブジェクトもあります。
解決
させて
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
.
所属していません StackOverflow