質問: 三角形の面の傾斜をしらべるには 3次元座標の中の、三角形の面の傾きを調べるには どのように計算したらいいのでしょうか。 三角形の頂点座標はわかっていて yが高さで、x、zが方向になっています。 アークタンジェントを使って面の法線の角度を 調べたり、してみたのですが、うまくいきません。 平面であれば、アークタンジェントの結果を360度のはんい に修正すればできるのですが、 3次元ベクトルの場合、角度はどうなっているのでしょうか。 よく、3次ベクトルは2次にz座標が増えるだけと聞きますが 三角関数は平面しか計算できませんし、 xy平面、zy平面でそれぞれ計算した角度を、 足せばいいとも思えません。 見た目で考えれば、空間に三角の斜面があればその傾斜角が ひとつだけあるはずなのですが、実際にはどのように 計算したらよいのでしょうか。 どなたかご存知の方がおりましたらよろしく お願いいたします。
回答: 平面の方程式を (x/x)+(y/y)+(z/z)=1 とおくと 平面とx軸の交点がp(x,0,0)、 平面とy軸の交点がq(0,y,0)、 平面とz軸の交点がr(0,0,z)となります。 直線prへ原点o(0,0,0)から下した垂線の足をhとすると 直線prの式は (x/x)+(z/z)=1 線分oh=1/√{(1/x)^2+(1/z)^2}=xz/√{x^2+z^2} 原点から平面に下した垂線の足をk(a,b,c)とすれば ベクトル(→ok)は法線ベクトルでもあるから 法線ベクトル(a,b,c)=(1/x,1/y,1/z) 線分ok=(原点から平面に下した垂線の長さ) =1/√{(1/x)^2+(1/y)^2+(1/z)^2} =xyz/√{(xy)^2+(yz)^2+(zx)^2} >三角形の頂点座標はわかっていて >yが高さで、x、zが方向になっています。 質問は平面のxz座標平面に対する傾斜角αを求めるのであるから sinα=ok/oh=y√[(x^2+z^2)/{(xy)^2+(yz)^2+(zx)^2}] これから α=arcsin(y√[(x^2+z^2)/{(xy)^2+(yz)^2+(zx)^2}]) となるかと思います。 合っているかは保証しませんので計算して確認してみてください。 理解できないと合っている事も確認できないですよ。 その場合は教科書や参考書で勉強して下さい。