Flash教程:旋转花朵效果的制作

2016-01-29 12:34 78 1 收藏

Flash教程:旋转花朵效果的制作,Flash教程:旋转花朵效果的制作

【 tulaoshi.com - Flash 】

效果演示:

[next]

本课中的内容涉及:函数定义, for...in 语句, .onEnterFrame 三个关键内容,函数的作用是实现代码的重用,配合for...in语句可批量赋予函数.望初学者仔细阅读.

思路:
1.使用for...in语句遍历整个主场景(_root)中所有的对象;
2.找到他们(如_root[k]),并为他们的不同方法指定不同函数;

步骤1:
在主场景放入若干个影片剪辑,不需要为他们起实例名。

步骤2:
加入AS代码:

var F1:Function = function () {
 this.startDrag(false);
};
var F2:Function = function () {
 this.stopDrag();
};
var F3:Function = function () {
 this._rotation += this.speed;
};
//定义三个函数:
// F1完成对象开始拖拽功能;
// F2完成对象停止拖拽功能;
// F3完成对象自转功能,速度为每个对象各自的speed*/
for (var k in _root) {
 _root[k].speed = random(20);
 _root[k].onPress = F1;
 _root[k].onRelease = F2;
 _root[k].onEnterFrame = F3;
}
//遍历主场景,为每个MC设置speed属性及onPress,onRelease.onEnterFrame方法。

[next]

Flash充电1:

两种定义函数的方法

(1)函数语句定义法:如

function Testadd(a, b) {
 return a+b;
}

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/flash/)

(2)函数表达式定义法:如

var Testadd:Function = function (a, b) {
 return a+b;
};

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/flash/)

平时,应当尽量使用函数语句定义[方法1],这种定义方法更加标准,也更简捷。

区别:方法2,需要先定义、后调用;方法1,可以先调用,后写定义。

[next]

Flash充电2:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/flash/)

for...in 用来枚举一个集合中所有的元素,多用于遍历(检索)如:XML,数组,Object甚至_root或MC等等,功能非常强大。本课中,我们用它来遍历整个_root。

例1:
var Car = {brand:"M6", color:"red", engine:2000};
for (var k in Car) {
 trace(k+"="+Car[k]);
}

// 输出结果:
//  brand=M6
//  color=red
//  engine=2000

例2:

//首先,在主场景中放入四个影片剪辑
for (var k in _root) {
trace(_root[k]);
}

//输出结果:
//_level0.instance4
//_level0.instance3
//_level0.instance2
//_level0.instance1

我们注意到,即使不给_root中的MC命名,FLASH编译器也自动为MC命名的,前面的_level10指该元件的深度为10.

Flash充电3:

onEnterFrame

(1) onEnterFrame是AS动画和游戏制作的灵魂。
(2) 当我们在主场景第一帧写入onEnterFrame=function(){...}时,实际上Flash编译器会自动在前面加上_root变为_root.onEnterFrame。
(3)重要:MovieClip.onEnterFrame=function(){...}形式。这种形式可以让MC独立地运行onEnterFrame。例:
//首先主场景上有三个影片剪辑,实例名分别为MC1,MC2,MC3。//
MC1.speed = random(10);
MC2.speed = random(10);
MC3.speed = random(10);
MC1.onEnterFrame = function() {
MC1._rotation += MC1.speed;
};
MC2.onEnterFrame = function() {
MC2._rotation += MC2.speed;
};
MC3.onEnterFrame = function() {
MC3._rotation += MC3.speed;
};

试想一下如果场景有100个这样MC那么写代码的过程是不是太痛苦了啊...呵呵...我们看看下面一种写法:
function F1() {
this._rotation += this.speed;
}
for (var k in _root) {
_root[k].speed = random(10);
_root[k].onEnterFrame = F1;
}

完成的功能相当于:
MC1.speed = random(10);
MC1.onEnterFrame = function() {
this._rotation += this.speed;
};

函数中this指:调用该函数的对象(MC1)

来源:http://www.tulaoshi.com/n/20160129/1486623.html

延伸阅读
标签: flash教程
本文由 中国 aaawer 原创,转载请保留此信息! 效果演示: [next] 制作过程:  1.打开FLASH,新建一个空白文档(550, 400) 选择文件,导入,导入到库导入事先准备好的图片(我这里导入了8张图) 然后把各图转换成图形元件 具体方法是Ctrl+l打开库用鼠标按住要转换的图拖到舞台中再按F8 转换成图形...
标签: FLASH flash教程
用Flash制作像册的教程已经很多了!这里就不在给大家罗嗦了!只要发挥自己的想象,相信自己!你能!那么超酷的旋转图像像册视觉效果就会出现。因为类似教程太多了,所以在这里不给大家详细讲解,如果你想深入研究,那么就自己下载源文件吧! 注:这个源文件是从一个国外站点上下载来的!简单给大家讲解一下制作过程。 先看效果和源文件。(演...
标签: flash教程
本文由 中国 清风掠影 原创,转载请保留此信息! 先看下效果: [next] 一、新建一个空白的FLASH文档,把背景色设为黑色,其它默认。 二、点选文本工具,选择好字体,字号,把填充色设为红色,然后在舞台打上“FLASH”,调整好位置。 三、单击下舞台上的字,然后按两次Ctrl+B取消字体组合,记住...
本例将通过调整影片剪辑的旋转方向和变化高度来模拟三维透视中的旋转效果。   本例思路:利用圆形阵列排放文字,为文本创建传统补间动画,并添加模糊、发光和投影滤镜来修饰图形。 Part 1    排列文字 (1)启动Flash CS4,新建一个文档,然后将文档属性做如图2-1所示的设置。   ...
标签: FLASH flash教程
本文由 aaawer 原创,转载请保留此信tulaoshi.com息! 效果演示: [1] 200806/12931_2.html'>[2] 200806/12931_3.html'>[3] 200806/12931_4.html'>[4] 200806/12931_2.html'>下一页 制作过程:  1.打开FLASH,新建一个空白文档(550, 400) 选择文件,导入,导入到库导入事先准备好的图片(我这里...

经验教程

472

收藏

45
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部