注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> 网页设计 >> Flash >> 制作实例 >> 网页设计正文

Flash教程:制作随机画圆弧动画

文章来源:蓝色理想 boenlee 作者:佚名 更新时间:2008-3-20 14:09:57 【 】 【加入收藏

一个随机画圆弧的效果
有几个属性可调整
也不多描述了
看看就知道了

点击这里看演示

贴一下代码
有兴趣的看一下吧
刚加了下注释


}
//主函数
function main () {
    if (--time > 0) {
        dir = random (2) ? 1 : -1;
        origin_angle += angle;
        //如果当前弧的方向与前一个的不同,计算当前弧所在圆的原点位置
        if (dir + old_dir == 0) {
            posx += cosD (origin_angle) * 2 * r;
            posy += sinD (origin_angle) * 2 * r;
            origin_angle += 180;
        }
        if (angle_rnd) {
            angle = dir * (random (50) + 50);
        } else {
            angle = dir * Math.abs (angle);
        }
        pos_obj = draw_arc (line_mc, posx, posy, r, origin_angle, angle, thickness, color_arr[random (color_arr.length)], 100);
        //加载树叶
        if (leaf_grow) {
            line_mc.attachMovie ("leaf", "leaf" + time, time, {_x:pos_obj.x, _y:pos_obj.y, _rotation:random (360), _xscale:random (50) + r * 2 + thickness * 5, _yscale:random (50) + r * 2 + thickness * 5, _alpha:random (100) + thickness * 5});
            var leaf_color:Color = new Color (line_mc["leaf" + time]);
            leaf_color.setRGB (leaf_color_arr[random (leaf_color_arr.length)]);
        }
        //跟踪 
        if (is_trace) {
            line_mc._x = mask._x - pos_obj.x;
            line_mc._y = mask._y - pos_obj.y;
        }
        old_dir = dir;
    } else {
        delete line_mc.onEnterFrame;
    }
}
//获取文本框内容,为数值
//txt_name:文本框名称
//nan_val:文本内容非数字时所取值
//zero_val:文本内容为0时所取值
//min_val:文本内容最小值
//max_val:文本内容最大值
function get_txt_value (txt_name:TextField, nan_val:Number, zero_val:Number, min_val:Number, max_val:Number) {
    if (isNaN (Number (txt_name.text))) {
        txt_name.text = String (nan_val);
    } else if (Number (txt_name.text) == 0) {
        txt_name.text = String (zero_val);
    } else if (Number (txt_name.text) < min_val) {
        txt_name.text = String (min_val);
    } else if (Number (txt_name.text) > max_val) {
        txt_name.text = String (max_val);
    }
    return Number (txt_name.text);
}
//重画
redraw_btn.onRelease = function () {
    delete line_mc.onEnterFrame;
    init_prop ();
    line_mc.onEnterFrame = main;
};
//选择是否跟踪
trace_check.onRelease = function () {
    is_trace = !is_trace;
    this.gotoAndStop (Number (is_trace) + 1);
};
//选择是否生长树叶
leaf_check.onRelease = function () {
    leaf_grow = !leaf_grow;
    this.gotoAndStop (Number (leaf_grow) + 1);
};
var keep_moving:MovieClip = this.createEmptyMovieClip ("keep_moving", 2);
var speed:Number = 10;
//移动line_mc
function moving (speedx:Number, speedy:Number) {
    keep_moving.onEnterFrame = function () {
        line_mc._x += speedx;
        line_mc._y += speedy;
    };
}
//停止移动
function stop_move () {
    delete keep_moving.onEnterFrame;
}
//按钮控制
up_btn.onPress = function () {
    moving (0, speed);
};
down_btn.onPress = function () {
    moving (0, -speed);
};
left_btn.onPress = function () {
    moving (speed, 0);
};
right_btn.onPress = function () {
    moving (-speed, 0);
};
up_btn.onRelease = up_btn.onReleaseOutside = down_btn.onRelease = down_btn.onReleaseOutside = left_btn.onRelease = left_btn.onReleaseOutside = right_btn.onRelease = right_btn.onReleaseOutside = function () {
    stop_move ();
};
//键盘控制
var key_lis:Object = new Object ();
key_lis.onKeyDown = function () {
    switch (Key.getCode ()) {
    case 37 :
        moving (speed, 0);
        break;
    case 38 :
        moving (0, speed);
        break;
    case 39 :
        moving (-speed, 0);
        break;
    case 40 :
        moving (0, -speed);
        break;
    }
};
key_lis.onKeyUp = function () {
    stop_move ();
};
Key.addListener (key_lis);
init_prop ();
line_mc.onEnterFrame = main;

  • 上一篇网页设计:

  • 下一篇网页设计:
  • 最 新 热 门
     Flash AS教程:decorator Pattern
     Flash AS教程:复制粘贴类
     Flash教程:彻底学习RadioButton组件
     Flash AS3教程:动态文本滚动条
     Flash教程:制作随机画圆弧动画
     全Flash动画网站的实现详细教程
     Flash 播放器的安全性设置
     Fireworks8教程:用素材制作炫酷的闪字效果
     Fireworks打造javascript图片提示效果
     Firewoks实例:铅笔图标
    最 新 推 荐
     Flash AS3教程:动态文本滚动条
     Flash教程:制作随机画圆弧动画
     FLASH打字游戏教程:字母练习
     flash下拉列表(comboBox)附源码下载
     符合web标准的网页中调用Flash的方法
     Flash组件实现多首mp3连放
     使用Flash引导线制作雪花飘飘动画
     Flash 8制作模糊遮罩效果细析
     Flash动画制作小野人玩摇滚实例
     Flash入门教程:滚动字幕动画的制作
    相 关 文 章

    Flash AS教程:decorator Pattern
    Flash AS教程:复制粘贴类
    Flash教程:彻底学习RadioButton组件
    Flash AS3教程:动态文本滚动条
    全Flash动画网站的实现详细教程
    Flash 播放器的安全性设置
    Fireworks打造javascript图片提示效果
    学习JavaScript的事件
    JavaScript扩展:正则像函数一样调用
    Javascript在IE和FF里的兼容问题

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用