[ActionScript 3.0] 利用ColorTransform实现对象(图片)的曝光过渡效果

原图效果

过渡效果
这个效果可以用帧动画实现较为简单,只需要调节这个影片剪辑的色彩效果样式里面的高级选项的三个通道值,以下用代码简单测试,可作为文档类:
package
{
import com.tweener.transitions.Tweener;
import flash.display.Loader;
import flash.display.SimpleButton;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
import flash.geom.ColorTransform;
import flash.net.URLRequest;
/**
* ...
* @author FrostYen
*/ public class ColorTransformExample extends Sprite
{
private var ldr:Loader = new Loader();
private var sp:Sprite = new Sprite();
private var btn:Sprite = new Sprite();
private var colorTransform:ColorTransform = new ColorTransform(1, 1, 1, 1, 255, 255, 255, 0);
private var frame:int=15;//相当于影片剪辑动画的帧数
public function ColorTransformExample() {
ldr.load(new URLRequest("image/farewell-to-fall.jpg"));
sp.transform.colorTransform = colorTransform;
btn.graphics.beginFill(0x666666);
btn.graphics.drawRect(0, 0, 100, 50);
btn.graphics.endFill();
btn.buttonMode = true;
btn.x = 700;
btn.y = 100;
this.addChild(btn);
this.addChild(sp);
sp.addChild(ldr);
stage.frameRate = 36;//帧频 ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoaded);
btn.addEventListener(MouseEvent.CLICK, onClick);
} private function onClick(e:MouseEvent):void
{
addEventListener(Event.ENTER_FRAME, onEnter);
} private function onEnter(e:Event):void
{
if (colorTransform.redOffset > 0) {
colorTransform.redOffset -= 255/frame;
colorTransform.greenOffset -= 255/frame;
colorTransform.blueOffset -= 255/frame;
sp.transform.colorTransform = colorTransform;
}else {
colorTransform = new ColorTransform(1, 1, 1, 1, 255, 255, 255, 0);
removeEventListener(Event.ENTER_FRAME, onEnter);
}
} private function onImageLoaded(e:Event):void
{ }
}
}
[ActionScript 3.0] 利用ColorTransform实现对象(图片)的曝光过渡效果的更多相关文章
- [ActionScript 3.0] 通过BitmapData将对象保存成jpg图片
此方法需要用到JPGEncoder.as和BitString.as这两个类,是将BitmapData对象转换成ByteArray,然后通过FileStream把此ByteArray写入到文件保存成jp ...
- [ActionScript 3.0] 利用InteractivePNG.as类精确选择识别png图片有像素的区域
用法:如果是把png直接导入flash转换成影片剪辑,只需在影片剪辑属性中勾选为ActionScript导出(x),并把基类里的flash.display.MovieClip替换成Interactiv ...
- [ActionScript 3.0] AS3 用于拖动对象时一次一页的缓动
package com.fylibs.components.effects{ import com.tweener.transitions.Tweener; import flash.display. ...
- [ActionScript 3.0] AS3 用于拖动对象时跟随鼠标的缓动效果
package com.fylibs.components.effects { import flash.display.DisplayObject; import flash.events.Even ...
- [ActionScript 3.0] 如何获得实例对象的类名及类
package { import flash.display.DisplayObject; import flash.display.MovieClip; import flash.display.S ...
- ActionScript 3.0 API 中的 Video 类
注:这个类在Flash流媒体开发中使用的很频繁,在此记录一下它的使用方法. 包 flash.media 类 public class Video 继承 Video DisplayObject Ev ...
- [ActionScript 3.0] as3处理xml的功能和遍历节点
as3比as2处理xml的功能增强了N倍,获取或遍历节点非常之方便,类似于json对像的处理方式. XML 的一个强大功能是它能够通过文本字符的线性字符串提供复杂的嵌套数据.将数据加载到 XML 对象 ...
- [ActionScript 3.0] 正则表达式
正则表达式: 正则表达式最早是由数学家Stephen Kleene在对自然语言的递增研究成果的基础上,于1956提出来的.具有完整语法的正则表达式,主要使用在字符串的格式的匹配方面上,后来也逐渐应用到 ...
- ActionScript 3.0入门:Hello World、文件读写、数据存储(SharedObject)、与JS互调
近期项目中可能要用到Flash存取数据,并与JS互调,所以就看了一下ActionScript 3.0,现把学习结果分享一下,希望对新手有帮助. 目录 ActionScript 3.0简介 Hello ...
随机推荐
- Mask_RCNN训练自己的模型(练习)
- [C++] Swap Two Num
Swap Two Num
- RedisHelper in C#
自己写了一个RedisHelper,现贴出来,希望各位大神能够指正和优化. using System; using StackExchange.Redis; using System.Configur ...
- RCC—使用 HSE/HIS 配置时钟
RCC :reset clock control 复位和时钟控制器:特别是要着重理解时钟树,理解了时钟树,F429 的一切时钟的来龙去脉都会了如指掌. STM32F4系列有5个时钟源: LSIRC( ...
- ettercap 命令
本地主机:192.168.0.149 目标主机:192.168.0.138 /etc/ettercap/etter.dns,将dns欺骗到本机 ettercap -T -q -i wlan0 -P d ...
- SSH2免密码登录OpenSSH
OpenSSH免密码登录SSH2http://blog.csdn.net/aquester/article/details/23836245 两个SSH2间免密码登录http://blog.csdn. ...
- uname查看系统名称
功能说明:uname用来获取电脑和操作系统的相关信息. 语 法:uname [-amnrsvpio][--help][--version] 补充说明:uname可显示linux主机所用的操作系统的版本 ...
- Android Logging
Here is HauteLook’s logger class from our Android Code Library. It displays class name, method name ...
- 编写高质量代码改善C#程序的157个建议——建议114:MD5不再安全
建议114:MD5不再安全 MD5不再安全不是就算法本身而言的.如果从可逆性的角度出发,MD5值不存在被破解的可能性. MD5被广泛应用于密码验证和消息完整性验证.假设新注册一个用户,当注册用户的密码 ...
- 响应者链条,iOS中touchs事件的处理流程。
用户在使用app的时候,会产生各样的事件.在iOS中的事件可以分为三种 触摸事件(Touch Event) 加速计事件(Accelerometer Event) 远程控制事件(Remote Contr ...