在某个方向Android上移动位图

时间:2011-05-05 00:26:05

标签: java android graphics matrix bitmap

好的,所以我正在开发Android游戏,现在我有一个我在屏幕中央绘制的位图。我可以使用Matrix类在一定程度上左右旋转位图。位图是船的图片,所以当用户想要向前移动时,我希望船以当前旋转的角度移动。关于我应该怎么做的任何想法?

1 个答案:

答案 0 :(得分:2)

好了,经过一系列的试验和错误以及一些关于触发器的阅读我已经设法解决了我自己的问题。保持船舶当前位置的矢量具有X和Y.我需要做的是,基于船舶的当前旋转计算速度矢量,然后将该速度矢量添加到位置矢量。

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

旋转以度为单位,因此需要将它们转换为弧度。速度也是船的实际速度,并应用于每个速度矢量。希望能帮助有同样问题的人。