·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]as3中的BitmapData类理解与介绍(2)

时间:2013-08-08 00:09cuplayer
三,公共方法 BitmapData一共有32个公共方法,当然一部分是成对出现的get/set方法,让我们来一一介绍。 1,构造方法 BitmapData(width:int, height:int, transparent:Boolean= true, fillColor:uint= 0xFFFFFFFF)

  三,公共方法

  BitmapData一共有32个公共方法,当然一部分是成对出现的get/set方法,让我们来一一介绍。

  1,构造方法

  BitmapData(width:int, height:int, transparent:Boolean = true, fillColor:uint = 0xFFFFFFFF)

  构 造方法有4个参数,其中两个必填,就是长宽,这两个值的输入保持“用多少填多少”的原则,因为Bitmapdata也是一种形式的内存开销,所以能省就 省。第三个是transparent,就是是否允许透明像素,原则同上,如果能确定不用的话,最好关掉,默认为允许,第四个为填充颜 色,bitmapdata既然是data,那肯定要有初始数据的存在,一开始是一些纯色的填充,默认为白色。

  2,应用滤镜

  applyFilter(sourceBitmapData:BitmapData, sourceRect:Rectangle, destPoint:Point, filter:BitmapFilter):void

  这个函数很有意思,在我的印象里,bitmapdata.applyFilter就是直接对bitmapdata进行一次滤镜算法,然后把其中的像素进行从新赋值,那为什么会有这么四个参数呢。我印象中的处理过程是:BMD--->滤镜算法--->得到的新BMD

  而实际上确是:

Step1:

sourceBitmapData--->(sourceRect滤镜的作用矩形区域)--->filter(滤镜)--->新的BMD(长宽为作用矩形区域sourceRect的长宽)

Step2:

原来的BitmapData--->在destPoint的x,y位置上--->画上新的BMD

  这样一来,除了可以实现对自己实施滤镜,还有了更多的可操作性。

  3,复制

  clone():BitmapData

  这个与之前介绍的复杂类型一样,这里就不多说了,详情可参考之前的Matrix的clone方法介绍部分。

  4,变色

  colorTransform(rect:Rectangle, colorTransform:ColorTransform):void

这个有点头疼,牵扯到ColorTransform类,也是一个大家比较陌生的类,那么这个hold一hold,大家先知道这个函数作用就是将某一rect的区域按colorTransform的定义进行变色。

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器