/*
*
* *-------------------------*
* | *** 位图翻转、旋转 *** |
* *-------------------------*
*
* 作  者: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;
} } }

  

AS3.0 位图翻转、旋转的更多相关文章

  1. AS3.0 位图(BMP)解析类

    /** * *-----------------------------* * | *** BMP格式解析类 *** | * *-----------------------------* * * 编 ...

  2. “AS3.0高级动画编程”学习:第一章高级碰撞检测

    AdvancED ActionScript 3.0 Animation 是Keith Peters大师继"Make Things Move"之后的又一力作,网上已经有中文翻译版本了 ...

  3. “AS3.0高级动画编程”学习:第二章转向行为(上)

    因为这一章的内容基本上都是涉及向量的,先来一个2D向量类:Vector2D.as (再次强烈建议不熟悉向量运算的童鞋,先回去恶补一下高等数学-07章空间解释几何与向量代数.pdf) 原作者:菩提树下的 ...

  4. 初学Direct X(7) ——位图的旋转,缩放以及平移

    初学Direct X(7) --位图的旋转,缩放以及平移 本文旨在实现通过D3DXMatrixTransformation2D函数实现位图的旋转,缩放以及平移操作,但是具体的原理部分会在后面进一步的探 ...

  5. Android 学习笔记之Bitmap位图的旋转

    位图的旋转也可以借助Matrix或者Canvas来实现. 通过postRotate方法设置旋转角度,然后用createBitmap方法创建一个经过旋转处理的Bitmap对象,最后用drawBitmap ...

  6. Android学习笔记之Bitmap位图的旋转

    位图的旋转也可以借助Matrix或者Canvas来实现. 通过postRotate方法设置旋转角度,然后用createBitmap方法创建一个经过旋转处理的Bitmap对象,最后用drawBitmap ...

  7. [ActionScript 3.0] AS3.0和AS2.0的相互通信

    AS3和AS2之间的通信,最好的方式可能就是LocalConnection了. AS2向AS3发送数据,即AS2调用AS3的函数: as2.0代码(按钮上写的发送信息代码): on (release) ...

  8. 转载:Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式

    Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式 出自:http://www.cnblogs.com/top5/archive/2012/08/04/2623464.html 关 ...

  9. as3.0 interface接口使用方法

    [转]as3.0 interface接口使用方法 AS在2.0的时候就支持接口了 接口能够让你的程序更具扩展性和灵活性,打个例如 比方你定义了一个方法 代码: public function aMet ...

随机推荐

  1. oralce 超过1亿条数据的数据库表清理实践

    2018-08-18 16:58 无腿鸟 阅读(331) 评论(0) 编辑 收藏 问题:当一个表的数据量超过一亿条,要删除其中的5000w条,如何处理. 如果直接使用delete语句,会涉及到到大量的 ...

  2. 树莓派 pip 手动安装 和使用阿里云源

    在 /etc/pip.conf 添加如下内容,启用源 [global] extra-index-url=https://www.piwheels.org/simple 下载后 pip install ...

  3. 阿里云yii2 composer update 很慢的解决办法

    先执行如下语句 composer global require "fxp/composer-asset-plugin:dev-master" 再执行 composer update

  4. 新概念英语第二册Lesson5:No wrong numbers

    Lesson 5 No wrong numbers 无错号之虞 First listen and then answer the question. 听录音,然后回答以下问题. What does ' ...

  5. npm WARN deprecated fsevents windows

    更新下 使用yarn貌似会帮助跳过这个问题: info fsevents@2.1.2: The platform "win32" is incompatible with this ...

  6. oracle连接-会话-进程

    ALTER SYSTEM SET RESOURCE_LIMIT=TRUE;CREATE PROFILE kyc_pro LIMIT IDLE_TIME 2;alter user kyc_acc pro ...

  7. linux系统执行.exe文件

    首先要了解一下Wine: Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,Mac OSX 及 ...

  8. linux部署php网页

    liunx环境下运行php和传统的Java web程序不一样.我直接放在tomcat下竟然不行. 安装了php的一些环境,还是访问不了,原因是不支持https访问.没办法,还是得用tomcat,同时我 ...

  9. 基于keras的triplet_loss

    https://blog.csdn.net/yjy728/article/details/79570554 https://blog.csdn.net/yjy728/article/details/7 ...

  10. 【Redis】Redis 主从模式搭建

    主从模式介绍 Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况.为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据 ...