在Android中扭曲和旋转位图

在Android中扭曲和旋转位图,android,matrix,bitmap,Android,Matrix,Bitmap,我第一次使用matrix和canvases,还没有找到这方面的教程。我已经能够通过仅旋转位图或倾斜位图获得良好的效果 目前,我可以使用以下方法旋转图像: Matrix.rotate(amount); 在旋转时,还有一些其他细节可以使形状围绕其位置居中,但这不是我问题的主要焦点 我现在想做的是让图像旋转,同时扭曲成不同的形状。想象一下,例如,当从任何方向看一个旋转的轮子时,它是什么样子的,但完全是侧向的。请浏览此链接。这对你有帮助吗 也试试这个 这两个都很好,但重点是同时倾斜和旋转。发生的事情

我第一次使用matrix和canvases,还没有找到这方面的教程。我已经能够通过仅旋转位图或倾斜位图获得良好的效果

目前,我可以使用以下方法旋转图像:

Matrix.rotate(amount);
在旋转时,还有一些其他细节可以使形状围绕其位置居中,但这不是我问题的主要焦点


我现在想做的是让图像旋转,同时扭曲成不同的形状。想象一下,例如,当从任何方向看一个旋转的轮子时,它是什么样子的,但完全是侧向的。

请浏览此链接。这对你有帮助吗

也试试这个


这两个都很好,但重点是同时倾斜和旋转。发生的事情是我的最终看起来像一个旋转的足球。这可能是我决定扭曲图像的地方,这就是问题所在。目前的流程是:1。图像缩放2。适用于矩阵3。矩阵偏斜4。矩阵旋转5。重复一遍。在将图像应用到矩阵之前,我是否应该倾斜图像?或者旋转后扭曲矩阵?我认为首先你应该旋转图像并扭曲它。矩阵=新矩阵();矩阵。后标度(粗标度,粗标度);旋转后基质(咖喱酸盐);矩阵后偏移(curSkewX,curSkewY);我试试看。我注意到你建议我每次都创建矩阵。这是故意的吗?如果我不这样做,矩阵会保持倾斜吗?是的,你每次都需要创建矩阵,请尝试一次。