2012-03-20 18 views
0

私は固有のライブラリを使って、平面を回転させて地平面に平行にしています。 地平面は法線ベクトル(0,0,1)を使用して定義されます 対象平面は3D点の集合であり、法線は です回転角は平面上の法線ベクトルとその上のあらゆる点で知られています 飛行機は、私はこの回転軸を見つける

ようなものは、T = AngleAxisf(軸)を形質転換 http://eigen.tuxfamily.org/api/TutorialGeometry.htmlからアフィン変換を使用したい接地面

に平行になるように回転されなければなりません。
この場合の軸は、回転が行われる任意の軸を表す行列です。 この軸の検索方法は?二つの面が平行で作る

感謝

答えて

4

は、その法線に平行にすることによって行うことができますので、あなたはちょうど約通常のターゲット面を回転させる軸を見つける必要があります。これは、地上平面法線とターゲット平面法線の両方に垂直な軸です。これは、外積を使用して見つけることができます。あなたの場合、ターゲット平面が[x、y、z]の法線を持つ場合、回転軸は[y、-x、0]です。

+0

どのように結果がベクトルである可能性があります、クロス積は行列を生成します、そうですか?それはgroundVector x targetVectorにグラウンディングされるか、またはその逆ですか? –

+0

@Moataz Elmasry:2つのベクトルの外積uxvは、uとvの両方に垂直なベクトルです.2つの正規化されたベクトル(u、v)/(|| u |||| v ||) uとvの間の角度の余弦です。 – andand

関連する問題