很好用的Matrix

Matrix 类表示一个转换矩阵,它确定如何将点从一个坐标空间映射到另一个坐标空间。您可以对一个显示对象执行不同的图形转换,方法是设置 Matrix 对象的属性,将该 Matrix 对象应用于 Transform 对象的 matrix 属性,然后应用该 Transform 对象作为显示对象的 transform 属性。这些转换函数包括平移(xy 重新定位)、旋转、缩放和倾斜。

 

注意:

使用 new Matrix() 构造函数创建 Matrix 对象后,才能调用 Matrix 对象的方法。

 

package {
    import flash.geom.Matrix;
    import flash.display.Sprite;
    import flash.display.GradientType;

    public class MatrixExample extends Sprite {

        public function MatrixExample() {
            var myMatrix:Matrix = new Matrix();
            trace(myMatrix.toString());    // (a=1, b=0, c=0, d=1, tx=0, ty=0)

            myMatrix.createGradientBox(200, 200, 0, 50, 50);
            trace(myMatrix.toString());    // (a=0.1220703125, b=0, c=0, d=0.1220703125, tx=150, ty=150)

            var colors:Array = [0xFF0000, 0x0000FF];
            var alphas:Array = [100, 100];
            var ratios:Array = [0, 0xFF];
            graphics.beginGradientFill(GradientType.LINEAR, colors, alphas, ratios, myMatrix);
            graphics.lineTo(0, 300);
            graphics.lineTo(300, 300);
            graphics.lineTo(300, 0);
            graphics.lineTo(0, 0);
        }
    }
}

 

常用的方法:

 

translate()方法 

public function translate(dx:Number, dy:Number):void

 

语言版本 : ActionScript 3.0
RuntimeVersions: AIR 1.0, Flash Player 9

 

 

沿 xy 轴平移矩阵,由 dxdy 参数指定。

参数

 dx:Number — 沿 x 轴向右移动的量(以像素为单位)。
 
 dy:Number — 沿 y 轴向下移动的量(以像素为单位)。

 

scale()方法 

public function scale(sx:Number, sy:Number):void

 

RuntimeVersions: AIR 1.0, Flash Player 9

 

 

对矩阵应用缩放转换。x 轴乘以 sxy 轴乘以 sy

scale() 方法将更改 Matrix 对象的 ad 属性。在矩阵表示法中,当前矩阵与以下矩阵连接也产生同样的结果:

 

 

参数

 sx:Number — 用于沿 x 轴缩放对象的乘数。
 
 sy:Number — 用于沿 y 轴缩放对象的乘数。

 

rotate()方法 

public function rotate(angle:Number):void

 

语言版本 : ActionScript 3.0
RuntimeVersions: AIR 1.0, Flash Player 9

 

 

对 Matrix 对象应用旋转转换。

rotate() 方法将更改 Matrix 对象的 abcd 属性。在矩阵表示法中,当前矩阵与以下矩阵连接也产生同样的结果:

 

 

参数

 angle:Number — 以弧度为单位的旋转角度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值