我想计算两点之间的角度。例如,假设我正在制作一个游戏,我想要一把枪指向鼠标光标,我得到将枪旋转到该角度所需的角度。
2 回答
阿波罗的战车
TA贡献1862条经验 获得超6个赞
使用math库的atan2功能,
p1 = (2,2)
p2 = (-1,5)
# Difference in x coordinates
dx = p2[0] - p1[0]
# Difference in y coordinates
dy = p2[1] - p1[1]
# Angle between p1 and p2 in radians
theta = math.atan2(dy, dx)
一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
在pygamepygame.math.Vector2
中,您可以通过使用对象 和来计算 2 个向量之间的角度angle_to()
:
在以下示例中,( x0 , y0 ) 是旋转点。( x1 , y1 ) 和 ( x2 , y2 ) 是 2 个点,它们定义向量形式 ( x0 , y0 ):
v1 = pygame.math.Vector2(x1-x0, y1-y0) v2 = pygame.math.Vector2(x2-x0, y2-y0) angle = v1.angle_to(v2)
angle_to()
计算与给定向量的角度(以度为单位)。
添加回答
举报
0/150
提交
取消