私は三角形を持っていて、2つの辺の長さを知っており(写真を参照)、写真に示されている角度を知る必要があります(赤は既知で、青の角度は私が数える必要があるものです)
Math.Tanを使用すると、ラジアンで表された角度が得られることがわかりました。そのため、これを実行しようとすると、次のようになります。
alpha = Math.Tan((CA/AB));
結果として常に0になります。私の質問は-これらの2つの側面だけを知っているのに、どうすればこの角度を得ることができますか?
試す:
double alpha = Math.Atan2(CA, AB)
結果、、alpha
およびその他の変数がdouble
私のサイキックデバッグは、CA
とAB
が両方とも整数、またはのいずれかでint
あることを教えてくれますlong
。したがって、結果も整数型になり、必要に応じて10進値を切り捨てます。少なくとも1つの値を浮動小数点型に変換して、浮動小数点の結果を取得します。
alpha = Math.Tan((CA/(double)AB));
あなたが探している角度は、正接ではなく逆正接です。
したがって、.Net ライブラリの arctanjant 関数を使用する必要があります。次の行は、必要なものを提供します。
double alpha = Math.Atan ((double)CA/AB) * 180 / PI;
ご存知のように、PI は 3.14 です。