将任意角度转换为间隔[-pi,pi] [关闭]

问题描述 投票:-2回答:2

如何将弧度角x的值从区间[[] -infinite,infinite [转换为区间[[[-pi,pi]?]

这种转换的例子,以度为单位:

45度=> 45度

    180度=> 180度
  • 181度=> -179度
  • -200度=> 160度
  • 380度=> 20度
python numpy trigonometry angle
2个回答
0
投票
import numpy as np np.arctan2(np.sin(x), np.cos(x)) # converts x to [-np.pi, np.pi]

...和:

np.arctan2(np.sin(x), np.cos(x)) + np.pi  # converts x to [0, 2*np.pi]

0
投票
from math import pi x = 8.14 bounded_x = x % (2*pi) bounded_x 1.8568146928204143

并且您可以简单地减去pi来将边界从-pi移到pi

bounded_x = pi - (x % (2*pi))
bounded_x 
1.2847779607693788
© www.soinside.com 2019 - 2024. All rights reserved.