论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash教程
Tag:flash cs,flash 8,鼠绘,as,手绘,工具,文字,loading,入门,初学,mc,影片剪辑,声音,mtv,游戏,引导,遮罩,菜单,补间,广告条,时钟,视频教程

如何利用as实现对音乐的控制?

文章类别:Flash | 发表日期:2008-9-21 15:03:33

  

如何利用as实现对音乐的控制?
解决思路
利用程序编程语言可以描绘出非常具象的物体。例如,我们利用AS可以创建一个影片剪辑,并设置这个影片剪辑的大小、外形、颜色等属性,并赋予其动作,就可以制作出具象物体的运动效果。下面的这三个效果都是通过as语句来完成的,大家不妨在抽象的、枯燥的语句快中体会一下DOS时代的灵感。
具体步骤
1、??运行Flash?MX?2004,文档属性默认。
2、??在图层1的第1帧绘制一个渐变填充的背景。如图3.3.111所示。


图3.3.111????绘制背景
3、??在这一帧上添加如下AS:
function?createSnowflake(n)?{
this.createEmptyMovieClip("snowflake"+n,?n);
mc?=?this["snowflake"+n];
mc.lineStyle(0,?0xFFFFFF,?50);
numSpikes?=?Math.round(Math.random()*5)+5;
spikeRadius?=?Math.random()*5+5;
for?(var?i?=?0;?i<numSpikes;?i++)?{
mc.moveTo(0,?0);
spikeAngle?=?2.0*Math.PI*i/numSpikes;
x?=?spikeRadius*Math.cos(spikeAngle);
y?=?spikeRadius*Math.sin(spikeAngle);
mc.lineTo(x,?y);
}
return?(mc);
}
function?initSnowflakes(n)?{
numSnowflakes?=?n;
for?(var?i?=?0;?i<numSnowflakes;?i++)?{
mc?=?createSnowflake(i);
mc._x?=?Math.random()*550;
mc._y?=?Math.random()*400;
mc.speed?=?Math.random()*3+3;
mc.drift?=?Math.random()*2-1;
mc.rotate?=?Math.random()*18-9;
?}
}
function?moveSnowflakes()?{
for?(var?i?=?0;?i<numSnowflakes;?i++)?{
mc?=?this["snowflake"+i];
mc._y?+=?mc.speed;
mc._x?+=?mc.drift;
mc._rotation?+=?mc.rotate;
?if?(mc._y>400)?{
mc._y?=?0;
??}
?if?(mc._x<0)?{
mc._x?=?550;
??}
?if?(mc._x>550)?{
?mc._x?=?0;
??}
?}
}
initSnowflakes(50);
stop();
moveSnowflakes
_root.onEnterFrame?=?function()?{
?_root.moveSnowflakes();
};
4、function?createSnowflake(n)?{
?//?建立一个空的MC
?this.createEmptyMovieClip("snowflake"+n,?n);
?mc?=?this["snowflake"+n];
?//?把线型设置为极细线,白色,半透明
?mc.lineStyle(0,?0xFFFFFF,?50);
?//?设置一个随机变量numSpikes,用它来存储雪花的瓣数
?numSpikes?=?Math.round(Math.random()*5)+5;
?//?设置随机的雪花半径长度
?spikeRadius?=?Math.random()*5+5;
?//?开始画雪花了,使用lineTo命令
?for?(var?i?=?0;?i<numSpikes;?i++)?{
??mc.moveTo(0,?0);
??spikeAngle?=?2.0*Math.PI*i/numSpikes;
??x?=?spikeRadius*Math.cos(spikeAngle);
??y?=?spikeRadius*Math.sin(spikeAngle);
??mc.lineTo(x,?y);
?}
?//?返回MC
?return?(mc);
}
function?initSnowflakes(n)?{
?//?把参数n置入numSnowflakes
?numSnowflakes?=?n;
?//?建立n个MC
?for?(var?i?=?0;?i<numSnowflakes;?i++)?{
??mc?=?createSnowflake(i);
??//?设置MC的位置为随机
??mc._x?=?Math.random()*550;
??mc._y?=?Math.random()*400;
??//?设置随机的雪花下落速度
??mc.speed?=?Math.random()*3+3;
??//?随机的飘移速度
??mc.drift?=?Math.random()*2-1;
??//随机的旋转速度
??mc.rotate?=?Math.random()*18-9;
?}
}
function?moveSnowflakes()?{
?//?开始移动numSnowflakes个雪花
?for?(var?i?=?0;?i<numSnowflakes;?i++)?{
??//?下落+飘移+旋转
??mc?=?this["snowflake"+i];
??mc._y?+=?mc.speed;
??mc._x?+=?mc.drift;
??mc._rotation?+=?mc.rotate;
??//?假如落到最下面就从上部重来
??if?(mc._y>400)?{
???mc._y?=?0;
??}
??//?假如走出左右边界的话就从相反的一边出现
??if?(mc._x<0)?{
???mc._x?=?550;
??}
??if?(mc._x>550)?{
???mc._x?=?0;
??}
?}
}
//?开始初始化,50个雪花
initSnowflakes(50);
stop();
//每帧都执行函数moveSnowflakes
_root.onEnterFrame?=?function()?{
?_root.moveSnowflakes();
};
保存,测试一下效果把。参看源文件“纯as制作雪花”。

视频教程列表
文章教程搜索
 
Flash推荐教程
Flash热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058