度の単位の角度をラジアン単位に変換する

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

Math.toRadiansメソッドおよびMath.toDegreesメソッドの使い方(1)

最初に 30° をラジアン単位に変換したあと、変換して取得した値を今度は度単位に変換しました。

-- --

Java でラジアンと度を相互に変換する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。