なぜY、XではなくX、YをATAN2する引数はありますか?
-
20-08-2019 - |
質問
CでATAN2関数は、次のシグネチャがあります。
double atan2( double y, double x );
他の言語も同様にこれを行います。これは私がそのことを知っている唯一の機能は、Y、Xの順ではなく、X、Yの順にその引数を取りされ、そして、私は座標を考えるとき定期的にネジ私を、私は思うので、(X、Y)。
ATAN2の引数の順序の規則は、この方法で、なぜ誰もが知っていますか?
解決
私はARCTANに関連すると考えているので(Y / X)、yが一番上に表示されるようにます。
ここではそれについて少し話素敵なリンクがあります:角度と方向の
他のヒント
私の仮定は、常にこれは、理由は三角定義であるとされていること、すなわち
tan(theta) = opposite / adjacent
原点から正準角を使用する場合、、反対常にYと隣接していることは常にXので、
atan2(opposite, adjacent) = theta
数学的な定義に関しては何秩序の混乱はありませんので、Ieが、それはそのように行われていた。
、Yと呼ばれる、その反対側の矩形の三角形を想定Xと呼ばれる隣接する側
黄褐色(角度)= Y / X
アークタンジェント(黄褐色(角度))=アークタンジェント(Y / X)
これは、理由は学校で勾配を計算するためのニーモニックです
がの実行の上に上がる、つまり量dy / dxを、以上簡単にはY / Xである。
そして、この順序は逆正接関数の引数に潜入しています。
だから、歴史的な加工品です。私にとって、それは私が
考えているかに依存します
私はatan2
使用する場合について。私は格差を考えているならば、私は
右のそれを得ます
私はおよそ座標ペアを考えている場合と、私はそれが間違って取得します。
所属していません StackOverflow