draw(),matrix简单使用
来源:互联网 发布:java中线程安全的类 编辑:程序博客网 时间:2024/05/16 07:31
Matrix 表示一个转换矩阵
| a b tx |
| c d ty |
| u v w |
Matrix只能应用在二维空间中,所以uvw分别默认为001
a,d 表示宽高的缩放,默认值是1,b.c控制倾斜度,tx,ty控制x坐标和y坐标,默认为原点00
matrix相当于一个模具/一个层,设置好后应用到具体的实物中,实物就会得到对应的效果。模具自身有很多方法
rotate,scale,translate,createGradientBox等,这些知识对模具的修改,
使用 1:设置Matrix ,将它赋给新的transform 的matrix属性,然后修改目标对象 的transform,即可应用
!2: BitmapData 的draw() 方法 bmd.draw(source:IBitmapDrawable,matrix:Matrix)等参数。
说明: draw 默认从对象的注册点开始,所以如果你的对象的注册点在左上角,可以得到完整显示对象,不然只会截取一部分,从注册点开始,算width,height
这时候需要Matrix来帮忙调整,偏移量可以通过Rectangle来帮忙,默认的Rectangle的left和top为改矩形的x坐标和y坐标,技巧是:你要活得相对于自己的矩形,
那么这个坐标就是相对于自己注册点的坐标,
var rect:Rectangle = obj.getRect(obj); //如果注册点在中心,left = - obj.width,top = - obj.height,这就是需要的偏移量,如果Container参数填舞台的话,就是左上角相对于舞台原点的坐标
var mat:Matrix = new Matrix(1,0,0,1,-rect.left,-rect.top); // tx ty的值为图像'偏移的值,正常如果注册点在中心,需要向右下偏移,所以再加 -号
最后再重新设定显示对象的坐标:
var rect:Rectangle = pic.getRect(pic);var bmd:BitmapData = new BitmapData(pic.width,pic.height,true,0);var mat:Matrix = new Matrix(1,0,0,1);bmd.draw(pic,mat);var bm:Bitmap = new Bitmap(bmd);bm.x = 100;bm.y = 100;addChild(bm);
可以用以实现简单的残影等
- draw(),matrix简单使用
- draw Matrix
- BitmapData draw函数使用
- Draw
- Draw
- Draw
- DRAW
- Android 里面使用Matrix进行简单地变换
- Matrix的基本使用与倒影效果的简单实现
- Matrix使用
- Matrix 使用
- Box2D C++教程13-使用debug draw
- Box2D C++ 教程-使用debug Draw
- Box2D C++ 教程-使用debug Draw
- pygame中画圆方法pygame.draw.circle()使用
- 【Unity3D自学记录】Draw Call的简单介绍
- 哈理工OJ 1045 Draw A Square(简单模拟)
- 一个简单的Matrix实现
- 由网站到android客户端
- 拷优(CopyU!)PRO新增功能
- Android之ArrayAdapter
- 自定义带图标的Preferecnce-----类ListPreference实现
- 用Matlab编写的棋盘格图像生成程序 Chessboard pattern generation program in matlab
- draw(),matrix简单使用
- 阳振坤:关系数据库的挑战与机遇
- PHP从零单排(二)访问和获取HTML表单数据
- 点击赞的动画效果
- JavaSript之prototype属性
- impala入门基础教程
- 【C语言】 会场安排问题
- web 项目 java.lang.ClassNotFoundException
- UVA 11078 - Open Credit System