所以,我不是數學知識最豐富的,並希望得到一些急需的反饋。 我的首要目標就是讓圖像追逐我的鼠標。有一些事情我沒有想到我想要反饋意見。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