помогите повернуть 2-х стороннее изображение (например, монету) - анимация смены сторон, когда первое изображение видно, второе нет. Когда я поворачиваю изображение, пока угол поворота не станет меньше 90 градусов, я покажу первое изображение, в противном случае второе изображение.
Теперь он повернут по оси Y (A), но мне нужно повернуть изображение по оси - центру повернутого изображения (B).
Трансформация:
long aniAngle = (System.currentTimeMillis() - animationStart)*180/ANIMATION_TIME;
aniCamera.save();
if(aniAngle <= 90)
{
aniCamera.rotateY(aniAngle); // angle of current rotation
aniCamera.getMatrix(aniMatrix);
aniCamera.restore();
int centerX = x + image.getWidth()/2;
int centerY = y + iamge.getHeight()/2;
aniMatrix.preTranslate(-centerX, -centerY);
aniMatrix.postTranslate(centerX, centerY);
canvas.save();
canvas.concat(aniMatrix);
Bitmap image = angle < 90 ? image1 : image2;
if(image == image2)
angle = 180 - angle; // second image goes from rotated state to normal - degrees of rotation should decrease during animation
c.translate (x + image.getWidth () / 2, y + cover.getHeight () / 2); // изображение левого верхнего угла с координатами (x, y)
c.rotate(angle); // angle of rotation non animated image
c.drawBitmap(image, -image.getWidth()/2, -image.getHeight()/2, null);
http://i.stack.imgur.com/TCRde.png