Android利用matrix对图片中心旋转

出自大连开源软件公共开发服务平台

Android利用matrix对图片中心旋转

摘要:具体原理我真的不知道是什么,因为matrix类设计到矩阵相乘之类的知识,没研究清楚,全靠穷举法试出来的,如果读者知道其原理很希望和你交流经验...


  具体原理我真的不知道是什么,因为matrix类设计到矩阵相乘之类的知识,没研究清楚,全靠穷举法试出来的,如果读者知道其原理很希望和你交流经验。

  我只贴出最关键的几行代码:

  Bitmap a; //之下省略一系列的引用声明

  ...      Matrix matrix = new Matrix();

  matrix.setTranslate(X, Y); //设置图片的旋转中心,即绕(X,Y)这点进行中心旋转   matrix.preRotate(degree, (float)

  a.getWidth()/2, (float)a.getHeight()/2); //要旋转的角度   canvas.drawBitmap(a, matrix, null);

  如果不是很想知道具体代码的原理,那么就照葫芦画瓢的写吧,通过改变X,Y和degree的值,可以使图片绕点(X,Y)旋转degree度。

个人工具