所以,我不是数学知识最丰富的,并希望得到一些急需的反馈。 我的首要目标就是让图像追逐我的鼠标。有一些事情我没有想到我想要反馈意见。Python - PyGame - 学习矢量/动画
1)追逐是非常僵硬的,并且以非常...“有角度”的方式跟随鼠标,只改变屏幕上设置点的方向(中间x轴,中间y轴和对角线)。
2)我想速度是一个常数,但图像移动得更快,因为它靠近鼠标。
3)当图像到达鼠标时,它“弹弓”通过鼠标创建一个模糊的狂热,而不是达到鼠标位置和停止。
这些是我主要关心的问题,但是如果您发现任何可能会误解的内容,请告诉我。我渴望理解这个整体向量/三角函数(很快进入物理学)。
def follow (self):
mouse_pos = pygame.mouse.get_pos()
diff = (self.xPos-mouse_pos[0], self.yPos-mouse_pos[1])
vector = math.sqrt(diff[0]**2 + diff[1]**2)
distance = (self.xPos/vector, self.yPos/vector)
if (self.xPos, self.yPos) == mouse_pos:
return
if mouse_pos[0] >= self.xPos:
self.xPos += distance[0]
else:
self.xPos -= distance[0]
if mouse_pos[1] >= self.yPos:
self.yPos += distance[1]
else:
self.yPos -= distance[1]
(整个程序可以在这里看到http://ideone.com/6OxWLi)
在此先感谢您的帮助!
刚刚完成更改。它完美的作品。我了解了一点,但仍不是100%。非常感谢您的回答! – jtsmith1287
你可能想观看[this](https://www.khanacademy.org/math/linear-algebra/vectors_and_spaces/vectors/v/linear-algebra--introduction-to-vectors) - 介绍矢量,由khanacademy .ORG。他在数学上解释了vector *是什么*以及它的含义*。请务必观看后续的视频! – opatut