论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: 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,游戏,引导,遮罩,菜单,补间,广告条,时钟,视频教程

两点间随机折线效果

文章类别:Flash | 发表日期:2008-9-21 19:42:24

  

Flash.rar
/UploadTeach/2006/03/15/2006315115543202.swf
映象中以前还是菜鸟时看的一个闪电特效的模式,因为没有看过源文件,一直没去琢磨算法,今天数学课复习三角函数的时候忽然想到了这个思路,于是就操起笔在本子上写了一下面的AS.
回家打开Flash, 测试通过.
源文件中有图解.

 * 折线效果
 *
 * Code by 木頭(13tds.com)
 *
 * Flash 8.0 ActionScript 2.0
 *
***/
 Stage.scaleMode = "noScale";
 Stage.showMenu = false;
 
 import flash.geom.Point; //注册Point類,假如不用此类可以使用其它方式代替点的位置
 
var Flash: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<Q; 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點
 
};
 var A:Point = new Point(0, 0); //初始A點
 var B:Point = new Point(400, 300); //初始B點
 var C:Number = 2; //初始段數
 
 setInterval(Flash,50,A,B,10,25)
上一篇:{应用}轮辐旋转遮照效果(无as) 人气:2271
下一篇:{应用}框架的制作 人气:2278
视频教程列表
文章教程搜索
 
Flash推荐教程
Flash热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058