PyGame中的定向碰撞?

时间:2012-02-22 21:46:32

标签: python pygame collision-detection

我有用于检测PyGame中的碰撞的代码,但是如何检测它碰撞的方向? 我目前的代码使用obj.colliderect(wall),我怎么能修改它以满足我的需要呢?

1 个答案:

答案 0 :(得分:3)

1.确定最后一个位置,在碰撞时刻获得实际位置,找到方向。

import math
x1,y1 = obj.pos
x2,y2 = obj.lastpos

x = x2 - x1
y = y2 - y1

angle = math.degrees(math.atan2(y,x))
if angle < 0:  angle += 360
print(angle)
#now you have the angle from it was heading

2.如果你有obj方向角:

angle = obj.get_angle()
angle += 180
while angle>360: angle += -360
print(angle)
#now you have the angle from it collides.