【发布时间】:2014-08-24 13:45:00
【问题描述】:
我正在尝试使用以下代码旋转和翻译我的位图(我尝试将其设为纯英文):
playerX = playerValues[Matrix.MTRANS_X];
playerY = playerValues[Matrix.MTRANS_Y];
if (fingerx1 > playerX) {
xspeed = 1;
}
if (fingerx1 < playerX) {
xspeed = -1;
}
if (fingery1 < playerY) {
yspeed = -1;
}
if (fingery1 > playerY) {
yspeed = 1;
}
//playerX and playerY are checked in Log.d, returns correct values
playerMatrix.setRotate(rotation, bitmap.getWidth()/2, bitmap.getHeight()/2);
playerX += xspeed;
playerY += yspeed;
playerValues[Matrix.MTRANS_X] = playerX;
playerValues[Matrix.MTRANS_Y] = playerY;
playerMatrix.setValues(playerValues);
这不起作用 :P 它在开始和当前 x 和 y 值之间来回闪烁。谁能告诉我做这个翻译的正确方法是什么?
(单独旋转也可以)
【问题讨论】:
-
我认为它与旋转时移动的点以及手动翻译的点有关......或者我完全关闭了。我很想听到答案:)
标签: java android matrix rotation translate-animation