2011-02-05 39 views
3

私は方程式がax + by-z + d = 0である平面を持っています。その法線ベクトル(a、b-1)となる。今、北の軸からの方向を計算するためにベクトルをxy平面に投影する必要があります(ここではY軸と思われます)。投影ベクトルを得るために助けてください。xy平面上の投影された表面の法線ベクトル

+0

私には分かりません。 World XY平面に投影しますか? X:(1,0,0) Y:(0,1,0) Z:(0,0,1) または任意の平面に投影しますか? – santiagoIT

+0

@ santiagoIT =>私は3D平面を持ち、その方程式はax + by-z + d = 0です。この平面のために、私は法線ベクトルを計算しました。私は法線ベクトルが3dであると思う。今、私はそれを世界のXY平面に投影する必要があります。それは私の平面のポイントを通過している任意の平面にベクトルを投影することができれば、より良いです。しかし、私は世界XY平面で働いても同様の結果を得ることができると思います。 – niro

答えて

1

dot productであるためにあなたが探している。面が向いている方向を見つけることはその方法はとても簡単です。

// generic code, actual code depends on your engine. 
// BasePlane.GetNormal() would equal to (0,0,1) for the X/Y plane 
float dir = YourPlane.GetNormal().Dot(BasePlane.GetNormal()); 

それは1に等しい場合は、あなたの飛行機はあなたが反対テストしている面と同じ方向を向いています。 -1に等しい場合、それは平面に面しています。0と等しいとは、平面がテスト面と直交していることを意味します。

+0

@ xeo;返信いただきありがとうございます。あなたを混乱させて申し訳ありません。しかし、実際には、私は投影された法線ベクトルを取得する必要があります。私の3Dベクトル(つまり、a、b、-1)をxy平面に投影する方法はわかりません。 2Dベクトルになります。希望、それは今明らかです。 [g_niro] – niro

関連する問題