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

原图效果

过渡效果

这个效果可以用帧动画实现较为简单,只需要调节这个影片剪辑的色彩效果样式里面的高级选项的三个通道值,以下用代码简单测试,可作为文档类:

 1 package
 2 {
 3     import com.tweener.transitions.Tweener;
 4     import flash.display.Loader;
 5     import flash.display.SimpleButton;
 6     import flash.display.Sprite;
 7     import flash.events.Event;
 8     import flash.events.MouseEvent;
 9     import flash.geom.ColorTransform;
10     import flash.net.URLRequest;
11     /**
12      * ...
13      * @author FrostYen
14      */
15
16     public class ColorTransformExample extends Sprite
17     {
18         private var ldr:Loader = new Loader();
19         private var sp:Sprite = new Sprite();
20         private var btn:Sprite = new Sprite();
21         private var colorTransform:ColorTransform = new ColorTransform(1, 1, 1, 1, 255, 255, 255, 0);
22         private var frame:int=15;//相当于影片剪辑动画的帧数
23         public function ColorTransformExample() {
24             ldr.load(new URLRequest("image/farewell-to-fall.jpg"));
25             sp.transform.colorTransform = colorTransform;
26             btn.graphics.beginFill(0x666666);
27             btn.graphics.drawRect(0, 0, 100, 50);
28             btn.graphics.endFill();
29             btn.buttonMode = true;
30             btn.x = 700;
31             btn.y = 100;
32             this.addChild(btn);
33             this.addChild(sp);
34             sp.addChild(ldr);
35             stage.frameRate = 36;//帧频
36
37             ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoaded);
38             btn.addEventListener(MouseEvent.CLICK, onClick);
39         }
40
41         private function onClick(e:MouseEvent):void
42         {
43             addEventListener(Event.ENTER_FRAME, onEnter);
44         }
45
46         private function onEnter(e:Event):void
47         {
48             if (colorTransform.redOffset > 0) {
49                 colorTransform.redOffset -= 255/frame;
50                 colorTransform.greenOffset -= 255/frame;
51                 colorTransform.blueOffset -= 255/frame;
52                 sp.transform.colorTransform = colorTransform;
53             }else {
54                 colorTransform = new ColorTransform(1, 1, 1, 1, 255, 255, 255, 0);
55                 removeEventListener(Event.ENTER_FRAME, onEnter);
56             }
57         }
58
59         private function onImageLoaded(e:Event):void
60         {
61
62         }
63     }
64 }
时间: 2024-10-09 20:00:43

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

[ActionScript 3.0] 通过BitmapData将对象保存成jpg图片

此方法需要用到JPGEncoder.as和BitString.as这两个类,是将BitmapData对象转换成ByteArray,然后通过FileStream把此ByteArray写入到文件保存成jpg图片,因为用到File相关类,故需要用air播放器发布flash,在此提供两个下载JPGEncoder.as和BitString.as类的地址, CSDN:http://download.csdn.net/source/3205224 Adobe官方的CoreLib下载: http://code.

[ActionScript 3.0] 利用InteractivePNG.as类精确选择识别png图片有像素的区域

用法:如果是把png直接导入flash转换成影片剪辑,只需在影片剪辑属性中勾选为ActionScript导出(x),并把基类里的flash.display.MovieClip替换成InteractivePNG即可:如果是外部导入png,只需将存放png的类继承InteractivePNG即可: 1 package 2 { 3 import flash.display.Loader; 4 import flash.display.MovieClip; 5 import flash.display.

利用java实现简单图片的计数器

利用java实现简单图片的计数器,运行图: 想学习更多关于java的知识,可以点击<Java EE软件工程师>进行学习. <%@ page contentType="text/html;charset=gb2312"%><%@ page language="java" import="java.io.*"%> <html><head><meta http-equiv="C

[ActionScript 3.0] 正则表达式

正则表达式: 正则表达式最早是由数学家Stephen Kleene在对自然语言的递增研究成果的基础上,于1956提出来的.具有完整语法的正则表达式,主要使用在字符串的格式的匹配方面上,后来也逐渐应用到信息技术领域.不同的编程语言对于正则表达式有细微的不同,ActionScript 3.0是按照ECMAScript第3版语言规范(ECMA-262)中的定义实现正则表达式. 熟悉windows操作系统读者,应该知道windows中是怎样查找文件的.不错,使用通配符“*”用来匹配任意字符,“?”用来匹

[ActionScript 3.0] as3处理xml的功能和遍历节点

as3比as2处理xml的功能增强了N倍,获取或遍历节点非常之方便,类似于json对像的处理方式. XML 的一个强大功能是它能够通过文本字符的线性字符串提供复杂的嵌套数据.将数据加载到 XML 对象时,ActionScript 会分析数据并将其分层结构加载到内存(如果 XML 数据格式有误,它会发送运行时错误). 利用 XML 和 XMLList 对象的运算符和方法可以轻松遍历 XML 数据的结构. 1.读取外部 XML 文档 可以使用 URLLoader 类从 URL 加载 XML 数据.若

Hibernate利用关联关系操纵对象

利用关联关系操纵对象 数据对象之间关联关系有一对一.一对多及多对多关联关系.在数据库操作中,数据对象之间的关联关系使用JDBC处理很困难.本节讲解如何在Hibernate中处理这些对象之间的关联关系.本节使用到4个类,它们分别是Student(学生).Card(学生证).Group(班级)和Course(课程),它们之间的关联关系如图1-1所示.这些实体存在级联(cascade)问题.例如,当删除一个班级的信息时,还要删除该班的所有学生的基本信息.如果直接使用JDBC执行这种级联操作,会非常烦琐

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

Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式 出自:http://www.cnblogs.com/top5/archive/2012/08/04/2623464.html 关于AS3加载图片等外部资源,我常用的有两种方式:Loader和Embed,各自的特点,总结如下: Embed:在Flash编译阶段就将资源嵌入,也就是说图片资源是会被编译进swf文件里面去的:这样子的好处是代码比较简洁,使用方便,也不存在加载顺序的问题,缺点是会增大swf文件的体积 Loader:在

利用色光三原色调整图片颜色

最近学习了android中的图片颜色的处理,现在来总结一下.android中存在三种方式来调整图片的颜色,来达到不同的效果.分别是:利用色光三原色来调整图片颜色,利用颜色矩阵来调整图片颜色,利用调整每一个像素点来调整图片颜色.显然调整颜色的方式是越来越细致的.那么在这一篇文章中,就总结一下通过色光三原色来调整图片的颜色. 一.基础知识 首先说一下基础的颜色知识.android中采取的颜色模型是RGBA模型.即R代表红色,G代表绿色,B代表蓝色,A代表透明度.而通过改变一张图片的三原色的色相,饱和

利用颜色矩阵实现图片效果

在上一篇文章中,我们学习利用色光三原色调整图片颜色的方法.这一篇文章的代码将在上一篇的基础上继续书写.如果你还没读过,可以点击下面的链接: http://www.cnblogs.com/fuly550871915/p/4883422.html 在本篇中,我们继续学习图片颜色的变换方法,利用颜色矩阵将更加细致的调整图片颜色.其实颜色矩阵变换是图片颜色变化的基础原理.在下面我们将详细说一说. 一.基础知识 在用色光三原色来变换图片颜色中,涉及到一个类ColorMatrix,也就是颜色矩阵的意思.而a