JavaScriptのMathオブジェクトのatan2(y, x)メソッドについて記載します。
概要、実際のサンプルコードを交えて構文などの使い方をまとめてみました。
JavaScriptのMathオブジェクトとは?
math オブジェクトは、数学定数および関数のプロパティとメソッドを持つ、組み込みのオブジェクトです。
他のグローバルオブジェクトとは異なり、関数オブジェクトではありません。
Math は Number 型で動作し、すべてのプロパティとメソッドは静的で、Math をオブジェクトとして作成せずに使用することによって呼び出すことができます。
それでは、次に本題の説明に移ります。
JavaScriptのMathオブジェクトのatan2(y, x)概要
Math.atan2(y, x)は、x軸とy軸のなす角度をラジアンで返します。
構文、使い方
構文:Math.atan2(y, x)
使い方:引数yとxを渡し、その2点間の角度をラジアン単位で返します。
引数について
引数として、y軸とx軸の位置を指定します。
返り値について
Math.atan2(y, x)は、座標(x, y)を原点としたときの角度をラジアンで返します。
このメソッドを利用した便利なテクニック
Mathオブジェクトのatan2(y, x)は、2つの引数を受け取り、それらの引数を使用して、2つのベクトル間の角度を求めることができます。
このテクニックを使用すると、2つの点間の角度を求めることができ、それを使用して、2つの点間の距離を求めることもできます。
また、2つのベクトル間の角度を求めることにより、2つの点間の方向を求めることもできます。
現場で実際にどのように使われているか
Mathオブジェクトのatan2(y, x)は、2つの引数を取り、それらを使用して2次元空間内の任意の2点間の角度を計算するために使用されます。
これは、ゲーム開発などの2Dグラフィックスアプリケーションで使用されることが多く、特定のオブジェクトを他のオブジェクトに向かって移動させるために使用されます。
JavaScriptのMathオブジェクトのatan2(y, x)と一緒によく使われる処理
atan2(y, x)は、座標(x, y)の角度をラジアンで返す関数です。
そのため、atan2(y, x)は、座標を持つオブジェクトの向きを計算する際などによく使われます。
使用する上での注意点
– 引数の順番に注意する。
atan2(y, x)として、yが最初の引数、xが2番目の引数であることを覚えておく。
JavaScriptのMathオブジェクトのatan2(y, x)と似た処理のJSメソッド、違い
Math.atan2(y, x) と Math.atan(y/x) は似ていますが、違いがあります。
- Math.atan2(y, x) は、x と y の値によって結果が変わります。
- Math.atan(y/x) は、x と y の値に関係なく、常に同じ結果を返します。
JavaScriptのMathオブジェクトのatan2(y, x)を使ったサンプルコードの紹介
Mathオブジェクトのatan2(y, x)を使ったサンプルコード1
1 2 3 4 5 6 7 8 9 |
// x座標が2、y座標が1の場所の角度を求める let x = 2; let y = 1; let angle = Math.atan2(y, x); // 角度をラジアンから度に変換 let degree = angle * (180 / Math.PI); console.log(degree); |
[/simterm]
Mathオブジェクトのatan2(y, x)を使ったサンプルコード2
1 2 3 4 5 6 7 8 9 |
// x座標が-2、y座標が-1の場所の角度を求める let x = -2; let y = -1; let angle = Math.atan2(y, x); // 角度をラジアンから度に変換 let degree = angle * (180 / Math.PI); console.log(degree); |
[/simterm]
JavaScript Mathオブジェクトの他メソッドについて
JavaScriptのmathオブジェクトの他メソッドについては、下記記事にもまとめていますので参考にしてみてください
また、JavaScriptの公式ドキュメントであるMDNで記載されているmathオブジェクトのagan2メソッドについても補足としてリンクを貼っておきます。参考にしてみてください。