Flash制作实例教程:两点间随机折线效果

2008-04-02 10:59:30来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  效果如下:(用鼠标任意点击Flash动画)

  

  

  


  映象中以前还是菜鸟时看的一个闪电特效的模式,因为没有看过源文档,一直没去琢磨算法,今天数学课复习三角函数的时候突然想到了这个思路,于是就操起笔在本子上写了一下面的AS.

  回家打开Flash, 测试通过.

  源文档中有图解.:

  
*折线效果

  *

  *Codeby木钷(13tds.com)

  *

  *Flash8.0ActionScript2.0

  *

  ***/

  Stage.scaleMode="noScale";

  Stage.showMenu=false;

  importflash.geom.Point;//注册Point?,假如不用此类能够使用其他方式代替点的位置

  varFlash:Function=function(A:Point,B:Point,Q:Number,P:Number){

  _root.clear();//清屏

  _root.moveTo(A.x,A.y);//移?到A?

  _root.lineStyle(1);//初始化狙??式

  len=Math.sqrt(Math.pow(B.x-A.x,2) Math.pow(B.y-A.y,2));//樘度

  qlen=len/Q;//平均每段樘度

  angle=Math.atan2(B.y-A.y,B.x-A.x);//弧度

  deg=angle*180/Math.PI;//角度

  for(i=1;i
  temp={x:A.x qlen*Math.cos(angle)*i,y:A.y qlen*Math.sin(angle)*i};//?找第i?位置

  tempangle=(deg-90)*Math.PI/180;//垂狙的角度

  templen=P-random(P*2);//幅度(樘度)P~-P

  lineTo(temp.x Math.cos(tempangle)*templen,temp.y Math.sin(tempangle)*templen);//移?到temp?

  }

  _root.lineTo(B.x,B.y);//到B?

  };

  varA:Point=newPoint(0,0);//初始A?

  varB:Point=newPoint(400,300);//初始B?

  varC:Number=2;//初始段?

  setInterval(Flash,50,A,B,10,25)


标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 战精通网页路径之下载Flash

下一篇: [分形几何]IFS系统的实现