2011-05-05 59 views
0

好的,我正在Android上的遊戲工作,現在我有一個位圖,我已經畫在屏幕的中心。我可以使用Matrix類將位圖左右旋轉一定的角度。位圖是船舶的照片,所以當用戶想要前進時,我希望船舶以當前旋轉的角度移動。關於如何去做這件事的任何想法?在某些方向移動位圖Android

回答

2

還有一堆試驗和錯誤,以及一些閱讀trig我已經設法解決我自己的問題。保存船的當前位置的矢量具有X和Y.然後我需要做的是基於當前船的旋轉計算速度矢量,然後將該速度矢量添加到位置矢量。

speedX = (float) Math.sin(rotation*(Math.PI/180)) * speed; 
speedY = (float) -Math.cos(rotation*(Math.PI/180)) * speed; 
x += speedX; 
y += speedY; 

旋轉度是度數,因此需要將它們轉換爲弧度。速度也是船舶的實際速度,並應用於每個速度矢量。希望能幫助有同樣問題的人。