zoukankan      html  css  js  c++  java
  • Matrix实现图像旋转

    //向右旋转90度
            public function rotateRight(bmpData:BitmapData):BitmapData {
                var mc:Matrix = new Matrix();
                mc.rotate(Math.PI/2);
                mc.translate(bmpData.height,0);
                var bmpData:BitmapData = new BitmapData(bmpData.height,bmpData.width,true,0);
                bmpData.draw(bmpData,mc);
                return bmpData;
            }
            //向左旋转90度
            public function rotateLeft(bmpData:BitmapData):BitmapData {
                var mc:Matrix = new Matrix();
                mc.rotate(-Math.PI/2);
                mc.translate(0,bmpData.width);
                var bmpData:BitmapData = new BitmapData(bmpData.height,bmpData.width,true,0);
                bmpData.draw(bmpData,mc);
                return bmpData;
            }
            //水平翻转
            public function flipHorizontal(dsp:DisplayObject):void {
                var mc:Matrix = dsp.transform.matrix;
                mc.a = -1;
                mc.tx = dsp.width + dsp.x;
                dsp.transform.matrix = mc;
            }
            //垂直翻转
            public function flipVertical(dsp:DisplayObject):void {
                var mc:Matrix = dsp.transform.matrix;
                mc.d = -1;
                mc.ty = dsp.height + dsp.y;
                dsp.transform.matrix = mc;
            }
  • 相关阅读:
    我为何需要使用空接口?
    Castle 整合.NET Remoting
    MVC结构简介
    在asp.net页面上得到Castle容器的实例
    Castle.MVC框架介绍
    08.vue-router动态路由匹配
    07. vue-router嵌套路由
    06.路由重定向
    04 Vue Router路由管理器
    ES6新特性之 let 、const
  • 原文地址:https://www.cnblogs.com/xcai/p/2528486.html
Copyright © 2011-2022 走看看