- Home ›
- Java入門 ›
- 数値処理(Mathクラス)
度の単位の角度をラジアン単位に変換する
Math クラスで用意されている toRadians メソッドを使用すると、度の単位で表した角度をラジアン単位に変換することができます。逆に toDegrees メソッドを使用するとラジアン単位で表された角度を度の単位に変換することができます。ここでは Java でラジアンと度を相互に変換する方法について解説します。
(Last modified: )
Math.toRadiansメソッドの使い方
Math クラスの toRadians メソッドは度の単位で表した角度をラジアン単位に変換した値を取得できます。 toRadians メソッドはクラスメソッドです。書式は次の通りです。
public static double toRadians(double angdeg)
パラメータ: angdeg - 度で計測した角度 戻り値: ラジアンで表した、角度angdegの計測値
1 番目の引数に度の単位の角度を指定すると、ラジアン単位に変換した値を戻り値として返します。
なお 180(度) = π(ラジアン) であり、 π は Math オブジェクトの静的プロパティで Math.PI (=3.141592653589793) と定義されています。メソッドを使わずに度をラジアンに変換するには Math.PI / (180 / angdeg) となります。
次のサンプルを見てください。
System.out.println(Math.toRadians(30)); // 0.5235987755982988 System.out.println(Math.PI / (180 / 30)); // 0.5235987755982988
30° をラジアンに変換した値をメソッドを使う方法と使わない方法でそれぞれ取得しました。
Math.toDegreesメソッドの使い方
Math クラスの toDegrees メソッドはラジアンの単位で表した角度を度単位に変換した値を取得できます。 toDegrees メソッドはクラスメソッドです。書式は次の通りです。
public static double toDegrees(double angrad)
パラメータ: angrad - ラジアンで表した角度 戻り値: 度で表した、角度angradの計測値
1 番目の引数にラジアンの単位の角度を指定すると、度単位に変換した値を戻り値として返します。
なお 180(度) = π(ラジアン) であり、 π は Math オブジェクトの静的プロパティで Math.PI (=3.141592653589793) と定義されています。メソッドを使わずにラジアンを度に変換するには 180 * angrad / Math.PI となります。
次のサンプルを見てください。
System.out.println(180 * 0.52 / Math.PI); // 29.79380534680281 System.out.println(Math.toDegrees(0.52)); // 29.79380534680281
0.52ラジアンを度に変換した値をメソッドを使う方法と使わない方法でそれぞれ取得しました。
それでは簡単なサンプルプログラムを作って試してみます。テキストエディタで次のように記述したあと、 JSample10-1.java という名前で保存します。
class JSample10_1{ public static void main(String[] args){ double angdeg = 30; System.out.println(Math.PI / (180 / angdeg)); System.out.println(Math.toRadians(angdeg)); double angrad = Math.toRadians(angdeg); System.out.println(180 * angrad / Math.PI); System.out.println(Math.toDegrees(angrad)); } }
コンパイルを行います。
javac -encoding UTF-8 JSample10_1.java
その後で、次のように実行してください。
java JSample10_1
最初に 30° をラジアン単位に変換したあと、変換して取得した値を今度は度単位に変換しました。
-- --
Java でラジアンと度を相互に変換する方法について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。