当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > AS代码研究实例:随即运动参数的传递应用

Flash动画制作
Flash实例教程:用AS3代码表现倾斜角与斜率
Flash实例教程:用AS3代码制作交互式3D旋转动画效果
Flash cs3仿真艺术设计5.6:图形元件的同步与不同步
Flash cs3仿真艺术设计5.7:图形元件的同步应用
Flash cs3仿真艺术设计5.8:铰连身体部分
Flash实例教程:用AS2代码制作图片循环效果
Flash实例教程:AS3代码简单表现照片底片效果
Flash cs3仿真艺术设计5.9:关闭缺口_完善角色肢体连接
Flash入门实例教程:图片不间断滚动动画效果
Flash AS2实例教程:鼠标感应放大缩小图片效果
Flash AS3实例教程:鼠标跟随炫舞线条动画效果
Flash AS2实例教程:制作360度全景动画效果
Flash cs3仿真艺术设计5.10:位图动画的表现
Flash cs3仿真艺术设计5.11:导入PSD文件
Flash AS3基础教程:物理基础之速度向量(Velocity)
Flash AS3.0菜鸟学飞教程:帧循环学习实例
Flash MX 视频导入功能详解(6)
Flash教程:视频导入与编辑
Flash cs3仿真艺术设计5.12:运动引导层制作布什搞笑动画
Flash cs3仿真艺术设计5.13:人物行走动画制作技巧

Flash动画制作 中的 AS代码研究实例:随即运动参数的传递应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-04   浏览: 43 ::
收藏到网摘: n/a

看效果:


在舞台绘制一个圆转换为影片剪辑元件,实例名称为mc,在第一帧添加以下代码:

function fanhui(x1, x2, y1, y2) {//计算并返回定义的坐标和对象坐标相加的平方根
        Sqrt = Math.sqrt(x1+x2+y1+y2);
        return Sqrt;
}
function chushizhi(obja) {
        endX = random(550);//定义的X坐标
        endY = random(400);//定义的X坐标
        d = fanhui(endX, endY, obja._x, obja._y);//获取返回后的平方根

        dx = (endX-obja._x)/d*t;//定义对象要移动的X坐标
        
        dy = (endY-obja._y)/d*t;//定义对象要移动的Y坐标
}
function tt() {//定义移动的速度
        t = random(10);
}
function yidong(objb) {//对象移动
        objb._x = objb._x+dx;
        objb._y = objb._y+dy;

}
function movie(obj) {
        if (endX == undefined) {//如果定义的x坐标为空执行
                tt();//运行速度函数
                chushizhi(obj);//运行定义坐标函数

        } else if (obj._x>0 && obj._y>0 && obj._x<550 && obj._y<400) {//如果对象的坐标处于500*400大小的舞台中执行
                yidong(obj);//运行对象移动函数
        } else {//对象坐标超出舞台后重新定义一个处于舞台内的坐标,并且移到该处
                tt();
                chushizhi(obj);
                trace(endX);
                yidong(obj);

        }
}
onEnterFrame = function () {
        movie(mc);
};

这个实例主要演示参数的传递应用,因为之前我对参数是一点都不懂(虽然现在认识的也不深),但对自己来说是有了一个全新的认识和简单的应用,把这个献给我和一样的新手,记得多看几次函数括号内的参数,你会发现它们是有一定的规律的。我是小孩,祝大家晚上好!