当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > 教程/FLASH/插件 课件应用:制作弹簧的阻尼振荡效果

Flash动画制作
Flash5键盘鼠标应用(二)
Freehand和Flash的结合应用(4)
Flash5 有声音的三眼狼(二)
Freehand和Flash的结合应用(7)
Freehand和Flash的结合应用(10)
Freehand和Flash的结合应用(12)
Flash5 位移操作(二)
Flash5制作水波倒影效果(二)
Flash5任意两点间随机画线(三)
Flash 神奇遮罩之原理篇(3)
Flash 神奇遮罩之动态篇
Flash 神奇遮罩之图片篇(1)
Flash MX 视频导入功能详解(5)
利用Flash MX模板制作XML动态菜单(1)
用动作脚本动态创建和控制文本框 (6)
FW MX和Flash MX的亲密合作(2)
FW MX和Flash MX的亲密合作(5)
Flash中音量和左右声道平衡的控制(2)
Flash MX的AS绘图和时间控制 下
Flash5 有声音的三眼狼(四)

Flash动画制作 中的 教程/FLASH/插件 课件应用:制作弹簧的阻尼振荡效果


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 61 ::
收藏到网摘: n/a

本实例的弹簧效果如下,拖动小球,松开鼠标后,小球就会上下运动,效果跟弹簧一模一样。



  仔细分析一下,要保证弹簧的效果,只要做好如下几个方面:长度的缩放、位置的改变、每一次改变的值大小控制。下面我们就一步一步地来实现效果。

  1、打开 MX 2004,按“Ctrl + N”新建一个场景,按“Ctrl + F8”新建一个Movie Clip,在弹出的对话框里面将其命名为“spring”,类型为“Movie Clip”。按“N”,用直线工具在此Clip的场景中绘制如图2所示的线段。


  



  2、按“Ctrl + F8”新建一个Movie Clip,在弹出的对话框里面将其命名为“weightb”,类型为“Button”。按“O”,用圆形工具在此Button的up帧的场景中绘制一个圆,并在属性面板上面设置填充圆的颜色。如图3所示,用鼠标右键点击时间轴上面的层,选取“Insert Layer”,插入一个新的图层。在新插入图层的场景中,按“N”,用直线工具绘制两个三角形,最终效果如图4所示。




  3、按“Ctrl + F8”新建一个Movie Clip,在弹出的对话框里面将其命名为“weightm”,类型为“Movie Clip”。按“Ctrl + L”打开图库,将上一步所制作的Button从图库拖到此Clip的场景中,选取场景中的Button,在Action面板上面增加如下语句:

  


on (press) {
startDrag("", false, _root.xw, _root.yw-50, _root.xw, _root.yw+50);
//拖动此Button
}
on (release) {
stopDrag(); //停止拖动Button,并设置变量
_root.drag = true;
}



  4、按“Ctrl + F8”新建一个Movie Clip,在弹出的对话框里面将其命名为“dot”,类型为“Movie Clip”。按“N”,用直线工具在此Clip的场景中绘制一条很短的线段,在属性面板上面设置其颜色为红色。

  5、回到影片的主场景中,按“Ctrl + L”打开图库,将Clip“spring”从图库拖到场景中,在属性面板上面将其命名为“spring”,在Clip的Action面板上面增加如下语句:

onClipEvent (load) {
this._x = 400; //设置弹簧的位置跟缩放比例
this._y = 125;
this._yscale = 100;
//设置变量值,_root.ys表示主场景中的ys变量
_root.ys = this._y;
_root.sp = this._yscale;
}



 6、在主场景的时间轴上面插入一个新的图层,命名为“weightm”。按“Ctrl + L”打开图库,将Clip“weightm”从图库拖到场景中,在属性面板上面将其命名为“weight”,在Clip的Action面板上面增加如下语句:

onClipEvent (load) {
this._x = 400;
this._y = 200;
_root.xw = this._x;
_root.yw = this._y;
}


  注释:设置球的位置跟相应变量值。

  7、在主场景的时间轴上面插入一个新的图层,命名为“dot”。按“Ctrl + L”打开图库,将Clip“dot”从图库拖到场景中,在属性面板上面将其命名为“dot”。

  8、在主场景的时间轴上面插入一个新的图层,命名为“actions”。分别用右键点击此层的第2、3两帧,选取插入关键帧,如图5所示。


  



  分别在第2、3两帧的Action面板上面增加如下语句:

if (drag) {
var e = 2.71828; //设置一个弹簧的比例系数
if (j<1) {
//根据球的位置,取得变量的值
y = 2*(getProperty("weight", _y)-yw);
j = 1;
}
xp = getProperty("dot", _x); //取得要绘制的曲线的点
yp = getProperty("dot", _y);
bn = "dot" add i;