Android的Matrix类简介

Matrix:
图片的处理需要使用到Matrix类,Matrix是一个3 x 3的矩阵,他对图片的处理分为四个基本类型
1、Translate————平移变换
2、Scale————缩放变换
3、Rotate————旋转变换
4、Skew————错切变换
 
操作方式:
set(用于设置Matrix中的值)、
pre(先乘,相当于矩阵中的右乘),
post(后乘,根据矩阵的原理,相当于左乘)、
除了translate,旋转、缩放和倾斜都可以指定中心点。如果不指定,默认情况下,是围绕(0,0)点来进行。
 
这里要点一下前乘和后乘的区别,矩阵的乘法不满足交换率,所以两种乘法的结果不一样。
在图像处理中,越靠近右边的矩阵越先执行,所以pre(也就是先的意思)所设置的矩阵T(Scale,Rotation也是一样的)就会先于其一开始设置的
Scale执行,而post(后的意思)的因为是左乘,所以它会放在最左边,那么就会最后执行。
 
举例:要将一个图片旋转30度,然后平移到(100,100)的地方
  1. Matrix m =newMatrix();
    m.postRotate(30);//先转再平移
    m.postTranslate(100,100);
    Matrix m =newMatrix();
    m.setTranslate(100,100);//先移动到位置再转
    m.preRotate(30);

     

 
 



posted @ 2015-01-16 00:51  咖啡馆的水果拼盘  阅读(205)  评论(0编辑  收藏  举报