Java.lang.Math.atan2() 方法
描述
java.lang.Math.atan2(double y,double x) 将直角坐标 (x, y) 转换为极坐标 (r, theta)。 此方法通过计算 -pi 到 pi 范围内的 y/x 的反正切来计算相位 theta。 特别案例 −
如果任一参数为 NaN,则结果为 NaN。
如果第一个参数为正零且第二个参数为正,或者第一个参数为正且有限且第二个参数为正无穷,则结果为正零。
如果第一个参数为负零,第二个参数为正,或者第一个参数为负且有限,第二个参数为正无穷,则结果为负零。
如果第一个参数为正零,第二个参数为负,或者第一个参数为正且有限,第二个参数为负无穷,则结果是最接近 pi 的 double 值。
如果第一个参数为负零,第二个参数为负,或者第一个参数为负且有限,第二个参数为负无穷,则结果是最接近 -pi 的双精度值。
< /li>如果第一个参数为正,第二个参数为正零或负零,或者第一个参数为正无穷大,第二个参数为有限,则结果是最接近 pi/2 的双精度值。
如果第一个参数为负,第二个参数为正零或负零,或者第一个参数为负无穷,第二个参数为有限,则结果是最接近-pi/2的double值 .
如果两个参数都是正无穷大,则结果是最接近 pi/4 的双精度值。
如果第一个参数是正无穷大,第二个参数是负无穷大,则结果是最接近 3*pi/4 的双精度值。
如果第一个参数是负无穷大,第二个参数是正无穷大,则结果是最接近 -pi/4 的双精度值。
如果两个参数都是负无穷大,则结果是最接近 -3*pi/4 的双精度值。
结果必须在正确舍入结果的 2 ulps 范围内。 结果必须是半单调的。
声明
以下是 java.lang.Math.atan2() 方法的声明。
public static double atan2(double y, double x)
参数
y − 纵坐标
x − 横坐标
返回值
此方法返回与笛卡尔坐标中的点 (x, y) 对应的极坐标中点 (r, theta) 的 theta 分量。
异常
NA
示例
下面的例子展示了 lang.Math.atan2() 方法的使用。
package com.tutorialspoint; import java.lang.*; public class MathDemo { public static void main(String[] args) { // get a variable x which is equal to PI/2 double x = Math.PI / 2; // get a variable y which is equal to PI/3 double y = Math.PI / 3; // convert x and y to degrees x = Math.toDegrees(x); y = Math.toDegrees(y); // get the polar coordinates System.out.println("Math.atan2(" + x + "," + y + ")=" + Math.atan2(x, y)); } }
让我们编译并运行上面的程序,这将产生下面的结果 −
Math.atan2(90.0,59.99999999999999)=0.9827937232473292