当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash MX 编程深层次应用-高级特效(4)

Flash动画制作
Flash的事件机制:从AsBroadcaster到EventDispatcher
Flash脚本的执行顺序
完全掌握AS中点(.)语法的应用
抗日Flash集之:万里长城永不倒
抗日Flash集之:地道战
抗日Flash集之:抗日新闻
抗日Flash集之:三一八惨案
抗日Flash集之:五四运动
抗日Flash集之:抗日一隅
抗日Flash集之:血染的风采
抗日Flash集之:淞沪抗战
抗日Flash集之:终日到底
抗日Flash集之:东京功略战[游戏]
抗日Flash集之:大中华·1937
抗日Flash集之:长征
抗日Flash集之:抗日宣言
抗日Flash集之:血战钓鱼岛
用Flash MX制作MOV短片
用flash打开本地文件夹
Flash打造迷你特色音乐播放器

Flash动画制作 中的 Flash MX 编程深层次应用-高级特效(4)


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

3.2 综合特效(2)

    

3.2.2  血管特效

MX中,很多特效都是与画线功能分不开的,这一点说明了Macromedia公司在Flash MX中加入一些简单绘图功能之后,可制作的内容变得丰富起来,效果也可以变得非常奇妙。下面这个特效就是直接使用画线功能,通过合理安排画线的颜色与位置之后,产生出一个真实的血管网状图效果。具体程序如下:

Stage.scaleMode = "noScale";

this._x = this._y=200;

this.onEnterFrame = function() {

//最多产生1000根血管线

    if (++time<1000) {

             //血管生长的角度,在上一次生长角度正负25度之间波动

             t += (Math.PI/180*(25-random(50)));

             //血管的长度是20-50

             len = random(30)+20;

             //根据上次血管的位置计算新血管的位置,让血管可以无限延伸

       

             this._x -= ((x1=x+len*Math.sin(t))-x);

             this._y -= ((y1=y+len*Math.cos(t))-y);

             //用一种随机深红色来画血管

             this.lineStyle(3, "0x"+(random(102)+51).toString(16)+"0000", 50);

             this.lineTo((x=x1), (y=y1));

             //20%的概率画血管的分支

             if (random(100)<=20) {