使用矩阵设置ImageView
来源:互联网 发布:下载zoom软件 编辑:程序博客网 时间:2024/06/06 03:14
public class MyView extends View {
public MyView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
// initialize1();
initialize();
}
private Bitmap mBitmap;
private Matrix mMatrix = new Matrix();
public MyView(Context context) {
super(context);
}
//第一种方式使用原生矩阵
private void initialize1() {
mBitmap = ((BitmapDrawable)getResources().getDrawable(R.drawable.rtf)).getBitmap();
//角度大于零代表顺时针旋转
//cosValue,sinValue 旋转的角度的余弦值 平移距离 px,py 受scale影响
float cosValue = (float) Math.cos(Math.PI/6);
float sinValue = (float) Math.sin(Math.PI/6);
int scale=2;
int px=500,py=500;
mMatrix.setValues(
new float[]{
cosValue, sinValue, px,
-sinValue, cosValue, py,
0, 0, scale});
}
//第二种方式使用androidAPI设置矩阵
private void initialize() {
Bitmap bmp = ((BitmapDrawable)getResources().getDrawable(R.drawable.rtf)).getBitmap();
mBitmap = bmp;
//控制缩放比例
mMatrix.setScale(0.5f, 0.5f);
//平移到(x,y)处
mMatrix.postTranslate(500, 500);
/**
* 图像倾斜
*
* kx 控制y轴 正数逆时针倾斜
* ky 控制x轴 正数 顺时针倾斜
* 如果kx=ky 效果与图像旋转 类似
* px py 控制位置
*/
mMatrix.postSkew(0.3f, 0.3f, 0,0);
/**
* 图像旋转
* degrees 大于零为顺时针
* px py 旋转中心坐标
*
*/
mMatrix.postRotate(50,500,500);
}
@Override protected void onDraw(Canvas canvas) {
// super.onDraw(canvas); //如果界面上还有其他元素需要绘制,只需要将这句话写上就行了。
canvas.drawBitmap(mBitmap, mMatrix, null);
}
}
更多转载:http://blog.csdn.net/mengweiqi33/article/details/7446383
0 0
- 使用矩阵设置ImageView
- 关于图片设置imageview的使用;
- ImageView 使用 setAlpha() 设置控件透明
- ImageView 使用
- ImageView使用
- ImageView 设置图片
- ImageVIew 设置图片大小
- ImageView设置网络图片
- ImageView.ScaleType设置图解
- ImageView 控件属性设置
- ImageVIew 设置图片大小
- ImageView.ScaleType设置图解
- ImageView.ScaleType设置图解
- imageView设置网址图片
- ImageView.ScaleType设置图解
- ImageView.ScaleType设置图解
- ImageView.ScaleType设置
- ImageView.ScaleType设置图解
- 使用AutoCompleteTextView控件实现好友记录提醒
- PHP 的 BEncode 操作类(Torrent 文件编码)
- python tornado web开发环境
- pwrite
- oc函数
- 使用矩阵设置ImageView
- iOS开发UI基础—04UIButton练习之图片浏览器
- weblogic
- 新闻系统——真假分页
- sicily 2011. Nine Digits(广搜,康托展开)
- 懒惰、急躁和傲慢(Laziness, Impatience and hubris)
- mysql 执行计划解读
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(一)
- JQuery里面金额的格式化