邮件订阅
5ucms帮助鼠标效果系列教程:鼠标踪迹
作者: 来源: 日期:2017/4/2 20:17:51 浏览量:18(滞后) 人气:LOADING...(实时) 【

5ucms帮助鼠标效果系列教程:鼠标踪迹
这一节,我们将使用Flash MX新增的绘图函数来做一个显示鼠标移动轨迹的效果。当鼠标移动时,会显示出它经过的轨迹,当鼠标静止时,会在它附近自动作图。见下例。由于本例的效果完全是用动作脚本作出来的,所以只需在场景中写上“移动你的鼠标”几个字后,就可以直接进入动作脚本的编辑了。开始之前,先要掌握下面几个函数的使用方法。首先看看绘图函数如何使用:myMovieClip.lineStyle ([thickness[, rgb[, alpha]]])参数thickness一个整数,以磅为单位指示线条的粗细;有效值为 0 到 255。如果未指定数值,或者该参数为 undefined,则不绘制线条。如果传递的值小于 0,则 Flash 使用 0。数值 0 指示极细的粗细;最大粗细为 255。如果传递的值大于 255,则 Flash 解释程序使用 255。rgb线条的十六进制颜色值(例如,红色为 0xFF0000,蓝色为 0x0000FF,等等)。如果未指示该值,则 Flash 使用 0x000000(黑色)。alpha一个整数,指示线条颜色的 Alpha 值;有效值为 0 到 100。如果未指示该值,则 Flash 使用 100(纯色)。如果该值小于 0,则 Flash 使用 0。如果该值大于 100,则 Flash 使用 100。说明方法;指定一个线条样式,供 Flash 用于对 lineTo 和 curveTo 方法的后续调用,直到使用其他参数调用 lineStyle 为止。可以在绘制路径的中间调用 lineStyle 方法来为路径中的不同线条段指定不同的样式。myMovieClip.moveTo (x, y)参数x一个整数,指示相对于父影片剪辑的中心点的水平位置。y一个整数,指示相对于父影片剪辑的中心点的垂直位置。说明方法;将当前绘画位置移到 (x, y)。如果缺少任何一个参数,则此方法将失败,并且当前绘画位置不改变。myMovieClip.lineTo (x, y)参数x一个整数,指示相对于父影片剪辑的中心点的水平位置。y一个整数,指示相对于父影片剪辑的中心点的垂直位置。说明方法;使用当前线条样式从当前绘画位置向 (x, y) 绘制线条;当前绘画位置随后被设置为 (x, y)。如果正在其中绘制的影片剪辑包含用 Flash 绘画工具创建的内容,则调用 lineTo 将在该内容下面进行绘制。如果在对 moveTo 方法进行任何调用之前调用了 lineTo 方法,则当前绘画位置默认为 (0, 0)。如果缺少任何一个参数,则此方法将失败,并且当前绘画位置不改变。其次,就是Flash MX提供的一个创建空白影片剪辑的函数:myMovieClip.createEmptyMovieClip (instanceName, depth)参数instanceName标识新影片剪辑的实例名的字符串。depth指定新影片剪辑的深度的整数。说明方法;创建作为现有影片剪辑子级的空影片剪辑。该方法的行为类似于 attachMovie 方法,但是不必为新的影片剪辑提供外部链接名称。新创建的空影片剪辑的注册点为左上角。如果缺少任意一个参数,则该方法将失败。第三个也是Flash MX新增的函数,这里只做个简单介绍:setInterval( function, interval[, arg1, arg2, ..., argn] )说明动作;在播放影片时,每隔一定的时间间隔,就调用函数、方法或对象。参数function一个函数名或者一个对匿名函数的引用。interval对 function 或 methodName 参数的两次调用之间的时间,以毫秒为单位。arg1、arg2...argn可选参数,传递给 function 的参数。下面就可以正式开始了。在时间线上点选第1帧(也只有这一帧),打开动作面板,写入如下语句:// 显示鼠标踪迹,当鼠标静止时,随机作图
i = 0; // 显示鼠标踪迹的影片剪辑的顺序号
max = 50; // 共创建50个影片剪辑
n = 0; // 记录鼠标静止时间的累加器
// 主程序
function main() {
// 初始化变量
if (x0 == undefined) {
x0 = _xmouse; // x0,y0记录鼠标初始位置
y0 = _ymouse;
}
if (x0 == _xmouse && y0 == _ymouse) { // 如果鼠标没动
n = n+1; // 开始累加
if (n>15) { // 当累加器大于15时
star(x0, y0); // 起动随机作图程序
n = 0; // 累加器复位
}
} else { // 如果鼠标移动了
if (i>max) {
i = 0; // 如果影片剪辑数目超过最大值,再从0开始
}
// 创建一个空影片剪辑
_root.createEmptyMovieClip(i, i+100);
// 设置线条样式
_root[i].lineStyle(0, 0, 100);
// 开始画线
_root[i].moveTo(x0, y0);
_root[i].lineTo(_xmouse, _ymouse);
// 重新记录鼠标位置
x0 = _xmouse;
y0 = _ymouse;
i = i+1; // 影片剪辑的顺序号自加
n = 0; // 累加器复位
}
}

// 随机作图程序
function star(x, y) {
if (i>50) {
i = 0;
}
_root.createEmptyMovieClip(i, i+100);
_root[i].lineStyle(0, 0, 100);
_root[i].moveTo(x, y);
for (k=1; k<5; k++) { //随机产生4个点并连线
tx = x+Math.random()*80-40;
ty = y+Math.random()*80-40;
_root[i].lineTo(tx, ty);
}
_root[i].lineTo(x, y); //最后再连回起始点
i = i+1;
}
setInterval(main, 50); // 每50毫秒执行一次函数main()好,至此,这个作品全部完工。现在我们知道了,Flash MX已经能够让我们“凭空”制造出美丽的图案了,它的功能是越来越强大了!源文件下载

无忧站长学院,建站自然无忧www.5ucms.org

本站推荐: 5ucms模板下载 5ucms插件下载 仿站联系Q3876307       [复制给好友] [打印] [关闭] [返回] [顶部]
上一篇:5ucms仿站,FlashMX经典实例-对象类:变色城堡
下一篇:5ucms插件,鼠标效果系列教程:简单跟随
本站声明:本网站所载文章等内容,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权及其它问题,请在30日内与本网联系(Email:3876307#qq.com),我们将在第一时间删除内容。若原创内容转载请注明出处。
5ucms帮助鼠标效果系列教程:鼠标踪迹的关键词:
评论信息
相关分类
本周热门
本月热门
关于我们 - 版权/免责 申明 - 建站服务 - 网站地图 - 稿件投递 - 联系我们 - 5ucms
Copyright © 2008-2015 www.5ucms.org