- Math.toRadians()とは何か
- まずは「度」と「ラジアン」の違いを理解しよう
- なぜラジアンを使うのか
- Math.toRadians()の基本構文
- ステップバイステップで理解する
- 実際にsin()と組み合わせてみよう
- 初心者が最も間違えるパターン
- 内部ではどのように変換しているのか
- よく使う角度の変換を確認しよう
- 実務でよくある利用例① sin()の計算
- 実務でよくある利用例② cos()の計算
- 実務でよくある利用例③ tan()の計算
- 実務でよくある利用例④ 座標計算
- Math.PIとの関係を理解しよう
- Math.toDegrees()との関係
- 実務で使えるテンプレート集
- 情報セキュリティの観点から見る重要性
- 初心者が覚えておくべき重要ポイント
- まとめ
Math.toRadians()とは何か
Javaで三角関数を使い始めると、多くの初心者が最初にぶつかる壁があります。
それが、
なぜMath.sin(90)が1にならないの?
という疑問です。
実はMath.sin()、Math.cos()、Math.tan()などの三角関数は、私たちが普段使っている「度(°)」ではなく、
ラジアン
という単位で角度を受け取ります。
そこで利用するのが
Math.toRadians()
です。
Math.toRadians(角度)Javaこのメソッドは、
度数法 → ラジアン
へ変換してくれます。
三角関数を使うなら必須と言っていいほど重要なユーティリティです。
まずは「度」と「ラジアン」の違いを理解しよう
私たちは通常、
90°
180°
360°
という単位で角度を表現します。
これを
度数法
と呼びます。
一方、Javaの数学関数では、
ラジアン
という別の単位を使用します。
三角関数の世界ではラジアンが標準です。
代表的な値を見てみましょう。
| 度数法 | ラジアン |
|---|---|
| 0° | 0 |
| 90° | π/2 |
| 180° | π |
| 270° | 3π/2 |
| 360° | 2π |
この変換を自動で行うのがMath.toRadians()です。
なぜラジアンを使うのか
初心者は、
角度なら度数法のままでいいのでは?
と思うかもしれません。
しかし数学や物理学ではラジアンの方が計算しやすいという特徴があります。
そのため多くのプログラミング言語や数学ライブラリでは、三角関数はラジアンを使用します。
Javaもそのルールに従っています。
Math.toRadians()の基本構文
構文は非常にシンプルです。
Math.toRadians(角度)Java実際に使ってみましょう。
/*
* 180度をラジアンへ変換
*/
double radian =
Math.toRadians(180);
System.out.println(radian);
Java実行結果
3.141592653589793
これはπ(パイ)の値です。
ステップバイステップで理解する
ステップ1:角度を用意する
/*
* 90度
*/
double degree = 90;
Javaステップ2:ラジアンへ変換する
/*
* ラジアン変換
*/
double radian =
Math.toRadians(
degree
);
Javaステップ3:結果を確認する
System.out.println(radian);
Java実行結果
1.5707963267948966
これはπ/2です。
実際にsin()と組み合わせてみよう
実務でもっとも利用されるパターンです。
/*
* 90度
*/
double degree = 90;
/*
* sin計算
*/
double result =
Math.sin(
Math.toRadians(
degree
)
);
System.out.println(result);
Java実行結果
1.0
正しい結果になります。
初心者が最も間違えるパターン
非常によくあるミスです。
/*
* 間違ったコード
*/
double result =
Math.sin(90);
System.out.println(result);
Java初心者は、
1.0
になると思いがちです。
しかし実際は、
0.8939966636005579
になります。
これは90ラジアンとして計算されているからです。
正しくは、
/*
* 正しいコード
*/
double result =
Math.sin(
Math.toRadians(90)
);
Javaです。
内部ではどのように変換しているのか
Math.toRadians()は内部的に次の計算を行っています。
ラジアン
=
度 × π ÷ 180
例えば180度なら、
180 × π ÷ 180
↓
π
になります。
つまり、
Math.toRadians(180)
Javaは、
Math.PI
Javaと同じ値になります。
よく使う角度の変換を確認しよう
System.out.println(
Math.toRadians(0)
);
System.out.println(
Math.toRadians(90)
);
System.out.println(
Math.toRadians(180)
);
System.out.println(
Math.toRadians(360)
);
Java実行結果
0.0
1.5707963267948966
3.141592653589793
6.283185307179586
実務でよくある利用例① sin()の計算
/*
* sin(30°)
*/
double result =
Math.sin(
Math.toRadians(30)
);
System.out.println(result);
Java実行結果
0.5
実務でよくある利用例② cos()の計算
/*
* cos(60°)
*/
double result =
Math.cos(
Math.toRadians(60)
);
System.out.println(result);
Java実行結果
0.5
実務でよくある利用例③ tan()の計算
/*
* tan(45°)
*/
double result =
Math.tan(
Math.toRadians(45)
);
System.out.println(result);
Java実行結果
1.0
実務でよくある利用例④ 座標計算
/*
* 半径
*/
double radius = 100;
/*
* 角度
*/
double degree = 30;
/*
* X座標
*/
double x =
radius *
Math.cos(
Math.toRadians(
degree
)
);
/*
* Y座標
*/
double y =
radius *
Math.sin(
Math.toRadians(
degree
)
);
Javaゲームや地図システムで頻繁に利用されます。
Math.PIとの関係を理解しよう
Math.toRadians()は内部でπを利用しています。
/*
* π
*/
System.out.println(
Math.PI
);
Java実行結果
3.141592653589793
例えば、
Math.toRadians(180)
Javaと、
Math.PI
Javaは同じ値になります。
Math.toDegrees()との関係
Math.toDegrees()は逆変換です。
度→ラジアン
/*
* ラジアン変換
*/
double radian =
Math.toRadians(90);
Javaラジアン→度
/*
* 度へ戻す
*/
double degree =
Math.toDegrees(
radian
);
System.out.println(degree);
Java実行結果
90.0
元の角度へ戻ります。
実務で使えるテンプレート集
基本テンプレート
/*
* 度→ラジアン
*/
double radian =
Math.toRadians(
degree
);
Javasin連携テンプレート
/*
* sin計算
*/
double result =
Math.sin(
Math.toRadians(
degree
)
);
Javacos連携テンプレート
/*
* cos計算
*/
double result =
Math.cos(
Math.toRadians(
degree
)
);
Java座標計算テンプレート
/*
* 座標計算
*/
double x =
radius *
Math.cos(
Math.toRadians(
degree
)
);
double y =
radius *
Math.sin(
Math.toRadians(
degree
)
);
Java情報セキュリティの観点から見る重要性
Math.toRadians()自体はセキュリティ機能ではありません。
しかし、
- 制御システム
- シミュレーション
- IoT機器
- センサー処理
- 地理情報システム
などでは角度計算の正しさが重要です。
変換を誤ると座標計算や制御ロジックが大きく狂うため、正しい利用が重要になります。
初心者が覚えておくべき重要ポイント
- 度数法をラジアンへ変換するメソッドである
- sin、cos、tanを利用する前によく使う
- 引数は度数法で指定できる
- 戻り値はdouble型である
- 内部では π を利用して計算している
- Math.toDegrees()とは逆変換の関係である
- 三角関数を使うなら必須知識である
まとめ
Math.toRadians()は、度数法の角度をラジアンへ変換するためのJava標準メソッドです。
- 度数法からラジアンへ変換できる
- sin、cos、tanとセットで利用する
- 三角関数では必須の前処理である
- 戻り値はdouble型である
- Math.PIを利用して計算される
- Math.toDegrees()とは逆の関係にある
- Java開発者が三角関数を扱う際に必ず覚えておきたいユーティリティである
特に初心者は「Math.sin(90)が1にならない」という問題に必ずと言っていいほど遭遇します。その原因の多くはラジアン変換を忘れていることです。Math.toRadians()を正しく理解すれば、Math.sin()、Math.cos()、Math.tan()を安心して利用できるようになり、座標計算やシミュレーション、ゲーム開発などの高度な処理にも対応できるようになります。
