Python 转换两个不同坐标平面之间的角度?

Python convert angles between two different planes of coordinates?

我不知道如何表达我的问题,但我最感兴趣的是我可以在 python 中使用的逻辑,因为我在 python 中对数学用法的了解并不多.

我有 2 个不同的平面,一个是固定的,北总是 0,东是 90,南是 180,西是 270。我还有另一个参考平面,其中 0 总是在我前面。

现在对我来说,这在我的脑海和纸上听起来很简单,但在 python 中,我只是不太清楚如何反映这一点,无论我面对什么,它总是 0自己的参考平面,但是在另一个参考平面(北,东,南,西)中,我面对任何角度。例如,假设我在我自己的参考平面上有 70 度的东西,我知道在指南针参考中我面对的是 270 度(这意味着在我的参考平面中为 0 度时,我面对的是 270 度在指南针中),我想确定在我自己的参考平面中,哪个角度(指南针)是大约 170 度的对象。从数学上讲,我可以通过简单地向指南针参考添加 100 度来做到这一点,一旦我达到 360,我就会回到 0 。所以这意味着该物体在罗盘中为 10 度。

我知道在编程方面答案很简单,如果度数 > 360,则度数 = 0。但不知道 python 中是否有更简单的方法来考虑所有情况(度数<0, 度 >0) .

您可以使用模运算符 returns 除法的余数:

calculated_angle %= 360 # will keep the value between 0 & 359

因此,一旦您计算出的角度(通过将参考系的角度加上指南针上的角度获得)存储在 calculated_angle

您可以使用模运算符来确保如果角度超过 360 度,它 returns 回到 0 并重新开始计数。所以 460 % 360 就是 100。如果角度低于 0,它会再次从 360 开始。所以 -50 % 360 就是 310.