浅谈flash中数字变化控制动画变化的多种解决方法

时间:2022-10-04 07:30:21

浅谈flash中数字变化控制动画变化的多种解决方法

摘要:该文介绍了如何通过flash的代码来实现数字变化与动画变化的连接,并给出了两个实例来分别讲述了实现这种变化的两种方法。

关键词:数字变化;动画变化;连接;逐帧动画;if语句

中图分类号:TP317文献标识码:A文章编号:1009-3044(2011)08-1900-02

随着现在网络的发展,flas技术也在飞速发展。随着flas技术的发展,虚拟仿真也越来越发挥着重要的作用,尤其是在学院教学改革中。虚拟仿真,不仅能够生动形象的模仿实验实训过程,完全调动学生的主动性,更重要的是可以在学校实验室硬件条件不足的情况下解决问题,同时也可以大量减少教学的硬件投资。我们在制作flash虚拟系统的时候,经常会遇到数字变化与动画变化的连接问题,该文重点分析了如何来解决通过flash的代码来实现数字变化与动画变化的连接问题。

1 功能以及效果

功能以及效果如下图1所示

在文本框中输入不同的文字,右边容器会根据文字输入的大小来显示不同的容积,显示结果分别如图2、图3以及图4所示。

图1 图2 图3 图4

2 制作方法

1) 方法一:通过if语句控制逐帧动画来完成:

第一步,绘制矢量图形;按照样图输入文字,利用文本工具 将文本设置成输入文本,使用矩形工具绘制出容器外框,通过半透明的无边矩形绘制上涨的液体,然后把刻度标上去。

第二步:设置关键帧,制作动画。如图5所示。

在溢出动画这个层上面插入连续的关键帧,每次关键帧的液体上涨一个刻度,最后完全溢出。

第三步:输入代码,控制动画:

在第一个关键帧输入停止的代码,控制按钮层输入以下代码:

a.text=0;

对控制按钮加入如下代码:

on (release) {

if (a.text == "0") {

gotoAndStop(1);

} else if (a.text == "1") {

gotoAndStop(2);

} else if (a.text == "2") {

gotoAndStop(3);

} else if (a.text == "3") {

gotoAndStop(4);

} else {

gotoAndStop(5);

}}

优点:这种方法制作思路简单,程序简单。

缺点:关键帧的建立较多,文件大小增大,层的分布也较多,液体不能随着数字的精确变化而变化。

2) 方法二:通过if语句控制元件的高度来实现:

第一步,绘制矢量图形;按照第一种方法的第一个步骤来绘制矢量图形。

第二步:设置关键帧,制作动画。如图6所示。

新建一个液体的元件,拖入场景中取名为rong_mc。

第三步:输入代码,控制动画:

在第一个关键帧中输入如下代码:

a.text=0.0;

rong_mc._yscale=120;

对控制按钮加入如下代码:

on (release) {

if (a.text=0) {

rong_mc._yscale = 120*a.text/10;

} else {

a.text = 0;

}}

优点:动画的变化能够随着输入文本的变化精确变化。

缺点:编程难度大些。

3) 方法三:通过if语句控制移动元件动画来实现

第一步,绘制矢量图形;按照第一种方法的第一个步骤来绘制矢量图形。

第二步:设置关键帧,制作如上图6所示;

然后新建一个液体的元件,制作容器的一个10帧的重心移位动画如图7所示,拖入场景中取名为rong_mc。

第三步:输入代码,控制动画:

on (release) {

if (a.text=0) {

i=Number(a.text)

rong_mc.gotoAndStop(i);

} else {

a.text = 0;

}}

优点:可以让数字控制很好的动画效果。

缺点:需要制作元件动画,过程较为复杂,并且精确度需要通过移动动画关键帧的时间长短来控制。

3 总结

Flash通过文本数字的变化来控制动画的变化在虚拟仿真系统中的应用很广,这里我们通过通过IF语句三种方法来实现,文本数字的提取是通过a.text来提取的,分别通过if语句来控制关键帧,控制动画的高度,控制移动动画的帧的跳转三种方法来实现,相对而言,第二种方法最精确,第三种动画效果最好。

参考文献:

[1] 胡海.ADOBE FLASH CS3 PROFESSIONAL标准培训教材[M].北京:人民邮电出版社,2008.

[2] 葛雷布勒.优秀动漫游戏系列教材--Flash 动画入门[M].北京:中国科学技术出版社,2009.

[3] 赵英杰.Flash ActionScrip 高级编程艺术[M].北京:电子工业出版社,2006.

上一篇:ID3算法创建的数据模型的存储结构探讨 下一篇:基于NURBS的服装人体建模技术