【问题标题】:JavaScript atan2() function not giving expected resultsJavaScript atan2() 函数未给出预期结果
【发布时间】:2012-05-07 18:39:53
【问题描述】:
通常,极坐标从 0 到 π 再到 2π(实际上就在 2π 之前,因为它又等于 0)。然而,当使用 JavaScript atan2() 函数时,我得到了一个不同的、奇怪的范围:
笛卡尔 X |笛卡尔Y | θ (θ)
==================================================== =========
1 | 0 | 0 (0 ×
π)
1 | 1 | 0.7853981633974483 (0.25 ×
π)
0 | 1 | 1.5707963267948966 (0.5 ×
π)
-1 | 1 | 2.356194490192345 (0.75 ×
π)
-1 | 0 | 3.141592653589793 (1 ×
π)
-1 | -1 | -2.356194490192345 (-0.75 ×
π)
0 | -1 | -1.5707963267948966 (-0.5 ×
π)
1 | -1 | -0.7853981633974483 (-0.25 ×
π)
如您所见,到达 π (180°) 后,它会向下跳到 –π (–180°),然后再回到 0。我怎样才能让它使用范围 {0, ..., 2π} 而不是 {–π, 。 ..,π}?我一直在尝试考虑每个计算来“修复”这些值,但我也想知道为什么 JavaScript 选择这个范围而不是典型的极坐标范围。谢谢!
【问题讨论】:
标签:
javascript
coordinates
atan2
radians
polar-coordinates