方法1: Mathクラスを使用する方法
public class CartesianToPolar {
public static void main(String[] args) {
double x = 3.0; // 直交座標のx座標
double y = 4.0; // 直交座標のy座標
double radius = Math.sqrt(x * x + y * y); // 半径の計算
double angle = Math.atan2(y, x); // 角度の計算
System.out.println("極座標: 半径 = " + radius + ", 角度 = " + angle);
}
}
方法2: 自作のユーティリティメソッドを使用する方法
public class CartesianToPolar {
public static void main(String[] args) {
double x = 3.0; // 直交座標のx座標
double y = 4.0; // 直交座標のy座標
double radius = calculateRadius(x, y); // 半径の計算
double angle = calculateAngle(x, y); // 角度の計算
System.out.println("極座標: 半径 = " + radius + ", 角度 = " + angle);
}
private static double calculateRadius(double x, double y) {
return Math.sqrt(x * x + y * y);
}
private static double calculateAngle(double x, double y) {
return Math.atan2(y, x);
}
}
方法3: 極座標を表すクラスを作成する方法
public class PolarCoordinate {
private double radius;
private double angle;
public PolarCoordinate(double radius, double angle) {
this.radius = radius;
this.angle = angle;
}
public double getRadius() {
return radius;
}
public double getAngle() {
return angle;
}
}
public class CartesianToPolar {
public static void main(String[] args) {
double x = 3.0; // 直交座標のx座標
double y = 4.0; // 直交座標のy座標
PolarCoordinate polar = convertToPolar(x, y);
System.out.println("極座標: 半径 = " + polar.getRadius() + ", 角度 = " + polar.getAngle());
}
private static PolarCoordinate convertToPolar(double x, double y) {
double radius = Math.sqrt(x * x + y * y);
double angle = Math.atan2(y, x);
return new PolarCoordinate(radius, angle);
}
}
このように、Javaで直交座標から極座標への変換を行う方法はいくつかあります。利用する方法やコードのスタイルは、特定の要件や好みに応じて選択することができます。以上が、Javaにおける直交座標から極座標への変換の方法とコード例の説明です。