我正在读这篇关于获得2分之间角度的帖子,并且在想.我认为atan2定义为atan2(y,x),这里它是atan2(deltaX,deltaY),为什么x现在是第一个?
public float getAngle(Point target) {
float angle = (float) Math.toDegrees(Math.atan2(target.x - x, target.y - y));
if (angle < 0) {
angle += 360;
}
return angle;
}
Run Code Online (Sandbox Code Playgroud)
Ruc*_*era 13
Math.java定义为
public static double atan2(double y, double x) {
return StrictMath.atan2(y, x); // default impl. delegates to StrictMath
}
Run Code Online (Sandbox Code Playgroud)
这将返回相对于X轴的逆时针角度.
如果你互换这两个,你将获得相对于X轴的时钟角度.
在笛卡尔坐标系中,我们考虑相对于X轴的逆时针角度.这就是Math.java如上所述使用它的原因.
| 归档时间: |
|
| 查看次数: |
13158 次 |
| 最近记录: |