当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash5任意两点间随机画线(五)

Flash动画制作
Flash5的DATE对象(二)
Flash层的运用(一)
Flash 神奇遮罩之原理篇(1)
Flash 神奇遮罩之应用篇(5)
Flash 神奇遮罩之图片篇(3)
Flash 神奇遮罩之透明度篇(1)
Flash MX的自由变形工具(1)
Flash MX的自由变形工具(3)
用动作脚本动态创建和控制文本框 (7)
Freehand和Flash的结合应用(2)
Freehand和Flash的结合应用(6)
Flash 神奇遮罩之原理篇(2)
Flash 神奇遮罩之应用篇(1)
Flash 神奇遮罩之透明度篇(2)
实例学用Flash MX增强的AS功能(2)
FW MX和Flash MX的亲密合作(3)
Flash5 有声音的三眼狼(一)
Freehand和Flash的结合应用(5)
Flash5 有声音的三眼狼(三)
Freehand和Flash的结合应用(11)

Flash动画制作 中的 Flash5任意两点间随机画线(五)


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

5.3 Actions for MainMovie
// 主程序
// 要点1:鼠标位置属性(_xmouse,_ymouse)
// 要点2:Math Objects
// 日期:2000-09-02
// 作者:kanaka
// Email:[email protected]
     onClipEvent (mouseUp) {
      if (_root.FirstPointDrew == 0) {
// 读取起点的坐标
        x1 = _xmouse;
        y1 = _ymouse;
// 如果已经画过一条线,则将线和两个点都删除,以保持场景清洁
        if (_root.LineDrew == 1) {
         removeMovieClip (point1);
         removeMovieClip (point2);
         removeMovieClip (line1);
        }
// 在起点坐标上画一个点
        duplicateMovieClip (point, "point1", 1);
        setProperty (point1, _x, x1);
        setProperty (point1, _y, y1);
// 起点已经画出
        _root.FirstPointDrew = 1;
      } else {
// 读取终点的坐标
        x2 = _xmouse;
        y2 = _ymouse;
// 在终点坐标上画一个点
        duplicateMovieClip (point, "point2", 2);
        setProperty (point2, _x, x2);
        setProperty (point2, _y, y2);
// 终点已经画出,置 FirstPointDrew 为 0
        _root.FirstPointDrew = 0;
// 计算三角形三条边的长度
        x = Math.abs(x1-x2);
        y = Math.abs(y1-y2);
        z = Math.sqrt(x*x+y*y);
// 计算画线的旋转角度
        if ((x1$#@60;x2) and (y1$#@62;y2)) {
         angel = Math.atan(y/x)/Math.PI*180;
        } else if ((x1>=x2) and (y1$#@60;y2)){
         angel = Math.atan(x/y)/Math.PI*180+90;
        } else if ((x1>x2) and (y1$#@62;=y2)){
         angel = Math.atan(y/x)/Math.PI*180+180;
        } else {
         angel = 360-Math.atan(y/x)/Math.PI*180;
        }
// 设置画线动画的起始坐标 醴疟壤