atan2(), 反正切函数, 可以用来计算两点之间的弧度/角度, 但是该角度是在它特有定义下角度(-180~180], 但有时候我们需要转化为[0, 360), 本篇文章提供一种转化思路i
先来看下atan2的输出:
a = [1, 0]
b = [1, 1]
c = [-1, 1]
d = [-1, 0]
e = [-1, -1]
f = [1, -1]
for i in [a,b,c,d,e,f]:
angle = math.atan2(i[1], i[0]) * 180 / math.pi
print(angle)
输出:
0.0
45.0
135.0
180.0
-135.0
-45.0
大概是这样:
如何将该坐标系转为(0~360)呢?
只需要加一行代码:
angle = (360+ angle) % 360
加完后输出:
0.0
45.0
135.0
180.0
225.0
315.0