Flash ActionScript在动态改变影片剪辑颜色中的应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Flash ActionScript在动态改变影片剪辑颜色中的应用
【摘要】Flash是一种动画创作与应用程序开发于一身的创作软件。

ActionScript的发布后,除了具备强大的动画制作功能外,实现了较完整的面向对象编程模型,具备了开发大型应用程序的能力。

本文对ActionScript在动态改变影片剪辑颜色的应用做了论述。

【关键词】Flash;ActionScript;影片剪辑
1.引言
Flash是一种动画创作与应用程序开发于一身的创作软件,同时Flash也是一个非常优秀的矢量动画制作软件,它以流式控制技术和矢量技术为核心,制作的动画具有短小精悍的特点,所以被广泛应用于网页动画的设计中,以成为当前网页动画设计最为流行的软件之一。

2.Flash中的Action Script
AS就是Action Script的意思,直接翻译过来是“动作脚本”,实际是控制Flash 中各种元件动作属性的一种语言。

最初是一种简单的脚本语言,现在最新版本3.0,是一种完全的面向对象的编程语言,功能强大,类库丰富,语法类似JavaScript,多用于Flash互动性、娱乐性、实用性开发,网页制作和RIA应用程序开发[1]。

从Macromedia大刀阔斧对As1.0进行改革到AS2.0,这一段过程看上去还算长一些,从Flash MX到Flash MX2004到Flash 7.2再到Flash 8.Macromedia又紧罗密鼓的推出了Flash9预览版,Adobe发布的预览版可以对AS3.0进行编译,而As3.0经过测试它的速度可以说要比之前的AS2.0快10倍。

拿着AS3.0与AS2.0相对比,它看上去就象是重写的一种新语言一样[2]。

以打印Hello World为例。

ActionScript 2.0:值得注意的是这只能在整合环境下执行,因为trace函式只有支持整合环境。

trace(”Hello world!”);
下面代码利用onMouseMove事件当鼠标移动时输出现行鼠标位置。

同样的这只有在整合环境下执行。

onMouseMove = function (){
trace(”X:”+_root._xmouse);
trace(”Y:”+_root._ymouse);
};
这个较先进的范例创造一个包括数字与字符串的数组,并利用原形函式(prototype function)与函式递归给变量名num指定一个数,给变量str指定一个字符串。

然后,利用MovieClip应用程序接口,文字区域被显示在屏幕上,文字区域里头写入了变量值。

varmy_Array:Array=new Array(”Hello”,”ActionScript”,3,7,11,”Flash”);
Array.prototype.pickNumber=function ():Number {
var rand:Number=random(this.length);
return (typeof(this[rand])==“number”)?this[rand]:this.pickNumber();
};
ActionScript 3.0:下面先进的Hello World程序需要在Flex 2.0公开Alpha测试版整合环境中编译。

package {
import flash.text.TextField;
import flash.filters.DropShadowFilter;
public class HelloWorld extends MovieClip {
public function HelloWorld(){
var shad:DropShadowFilter = new DropShadowFilter(2,45,0x000000,25,3,3,2,2);
var txt:TextField =new TextField();
txt.x =Math.random()*300;
txt.y =Math.random()*300;
txt.selectable = false;
txt.text = “Hello World![“+Math.round(txt.x)+”,”+Math.round(txt.y)+”]”;
addChild(txt);
}
}
}
as3.0最重要的概念就是在效能方面的增进,平时所加入的任何事件都可以被监听或从内存中移除。

以下例子就是监听与移除内存占用,这是as3.0最重要的基础概念。

bt1.addEventListener(MouseEvent.CLICK,bt1_click);
function bt1_click(e:MouseEvent):void{//触发的事件内容;}
//该按纽监听不需要时则remove掉,增加效能,bt1.removeEventListener (MouseEvent.CLICK,bt1_click);
Flash使用ActionScript给动画添加交互性。

在简单动画中,Flash按顺序播放动画中的场景和帧,而在交互动画中,用户可以使用键盘或鼠标与动画交互。

例如,可以单击动画中的按钮,然后跳转到动画的不同部分继续播放;可以移动动画中的对象;可以在表单中输入信息等等。

使用ActionScript可以控制Flash 动画中的对象,创建导航元素和交互元素,扩展Flash创作交互动画和网络应用的能力[3]。

相关文档
最新文档