多次元ベクトル回転や角度の計算 - どのように?
-
25-09-2019 - |
質問
入力2つの多次元(例えば、DIM = 8)は、aとbベクトル
。私はそれらのベクトルaとbの間の "監督" の角度(0-2 *パイ、ない0-PI)を見つける必要があります。彼らは「監督」角度L.によって平面A、Bに回転ベクトルbと平行にIの必要性はない場合、彼らは平行である場合と、飛行機は重要ではありませんが、回転の角度は同じLである。
2d及びこれを3Dをは非常に簡単ですが、私は失われています複数の次元のために、私はGoogleで何かを見つけることができませんでした、と私はいくつかすでに証明&テスト方程式(私の計算によって導入されたエラーを回避する:-D)を使用して好みます。
ヒント、リンク、などのために事前にありがとうございます。
解決
私はあなたのベクトルaとbによって生成された平面上で動作するはずと信じています。コード次いで(ところで、ベクトルの次元が定義の空間の寸法によって、である)に関わらず寸法と同じになります。
あなたはとして(A、B)を直交化によって、それを行うことができます
a' = a/||a||
b1 = b - (a'·b)a' <-- scalar product denoted by ·
b' = b1/||b||
これは正規直交基底と平面上にあり、ビジネスに戻ってする必要があります。その根拠にBの座標は( '・B、B' ・B)です。以下のためには、同様に(|| || 0)です。あなたは周囲の空間に戻りたい場合は、単に「+×2 B」×1 Aと座標(X1、X2)を使用してベクトルを作成します。
私は数学の表記があまりにも混乱していません願っています。
他のヒント
N次元グラフィックスのためにローテーション:
あなたはこの論文便利を見つけることができますAJハンソンする
こともできます。この論文もあります:一般的なn次元の回転は、 に。あなたはまた、人々の束をしてみてください。このフォーラムのスレッドをチェックアウトすることができますそれを動作するように。そして、ここにあるさらに別の紙: n次元空間における剛体の回転コンセプトにを。必要があります。やめる。グーグルます。所属していません StackOverflow