/* * * *-------------------------* * | *** 位图翻转、旋转 *** | * *-------------------------* * * 作 者:fengzi(疯子、wu341、wgq341) * 作者信息:身高(161cm);体重(60kg±);年龄(公元1970后);籍贯(山城直辖市);不会写代码,只是代码搬运工。 * 联系方式:QQ(493712833)。 * * 随 笔: https://www.cnblogs.com/fengziwu/ * * 版权协议:请自觉遵守LGPL协议,欢迎修改、复制、转载、传播给更多需要的人。 * 免责声明:任何因使用此软件导致的纠纷与软件/程序开发者无关。 * 日 期: 2019.05.08 * * ------------------ 例子 ----------------------- * import fengzi.utils.BmdUtil var bitmap:Bitmap=addChild(new Bitmap(BmdUtil.upanddown(new Img()))) as Bitmap; */ package fengzi.bmd { import flash.display.BitmapData; public class BmdUtil { public function BmdUtil() { // constructor code } /** * @ 垂直翻转 * @param bt BitmapData对象 * @return 新的BitmapData */ public static function upanddown(bt:BitmapData):BitmapData { var bitmapData:BitmapData = new BitmapData(bt.width,bt.height,true,0x00000000); for (var i:int=0; i<bt.width; i++) { for (var j:int=0; j<bt.height; j++) { bitmapData.setPixel32(i, bt.height-j-1, bt.getPixel32(i,j)); } } return bitmapData; } /** * @ 水平翻转 * @param bt BitmapData对象 * @return 新的BitmapData */ public static function rightandleft(bt:BitmapData):BitmapData { var bitmapData:BitmapData = new BitmapData(bt.width,bt.height,true,0x00000000); for (var i:int=0; i<bt.height; i++) { for (var j:int=0; j<bt.width; j++) { bitmapData.setPixel32(bt.width-j-1, i, bt.getPixel32(j,i)); } } return bitmapData; } /** * @ 90度翻转 * @param bt BitmapData对象 * @return 新的BitmapData */ public static function turn90(bt:BitmapData):BitmapData { var bitmapData:BitmapData = new BitmapData(bt.height,bt.width,true,0x00000000); for (var i:int=0; i<bt.height; i++) { for (var j:int=0; j<bt.width; j++) { bitmapData.setPixel32(i,bt.width-j, bt.getPixel32(j,i)); } } return bitmapData; } /** * @ 270度翻转 * @param bt BitmapData对象 * @return 新的BitmapData */ public static function turn270(bt:BitmapData):BitmapData { var bitmapData:BitmapData = new BitmapData(bt.height,bt.width,true,0x00000000); for (var i:int=0; i<bt.height; i++) { for (var j:int=0; j<bt.width; j++) { bitmapData.setPixel32(bt.height-i-1,bt.width-j, bt.getPixel32(j,i)); } } return bitmapData; } } }