如何在Python 3中计算两点之间的角度?

如何在Python 3中计算两点之间的角度?,python,python-3.x,math,pygame,angle,Python,Python 3.x,Math,Pygame,Angle,我想计算两点之间的角度。例如,假设我正在做一个游戏,我想让一支枪指向鼠标光标,我得到了旋转枪到该角度所需的角度。使用math库的atan2函数 p1=(2,2) p2=(-1,5) #x坐标差 dx=p2[0]-p1[0] #y坐标差 dy=p2[1]-p1[1] #p1和p2之间的角度(弧度) θ=math.atan2(dy,dx) 在中,您可以使用对象和计算2个向量之间的角度: 在下面的示例中,(x0,y0)是旋转点。(x1,y1)和(x2,y2)是定义向量形式(x0,y0)的2个点: v1

我想计算两点之间的角度。例如,假设我正在做一个游戏,我想让一支枪指向鼠标光标,我得到了旋转枪到该角度所需的角度。

使用
math
库的
atan2
函数

p1=(2,2)
p2=(-1,5)
#x坐标差
dx=p2[0]-p1[0]
#y坐标差
dy=p2[1]-p1[1]
#p1和p2之间的角度(弧度)
θ=math.atan2(dy,dx)
在中,您可以使用对象和计算2个向量之间的角度:

在下面的示例中,(x0,y0)是旋转点。(x1,y1)和(x2,y2)是定义向量形式(x0,y0)的2个点:

v1=pygame.math.Vector2(x1-x0,y1-y0)
v2=pygame.math.Vector2(x2-x0,y2-y0)
角度=v1。角度(v2)
计算与给定向量的角度(以度为单位)