flash 画线动画求解?

来源:百度知道 编辑:UC知道 时间:2024/05/27 07:32:33
flash画线动画的问题?举例说明:从点a(x,y)自动画线到b(x1,y1)再自动画线到c(x2,y2).
哪位高人能不能说明过程,用as更好。

在线等。。。。。
谢谢你的答案。但我需要的是划线的中间过程动画,不是最后画成的东西,比如flash文件运行后,从一点开始已一定的速度划线到另一点。

this.createEmptyMovieClip("draw_mc", 1); // 创建一个影片剪辑
draw_mc.lineStyle(1, 0x99CCFF); // 设置线条样式
draw_mc.moveTo(0, 0); // 绘画的起点
draw_mc.lineTo(100, 100);// 画到某一点
draw_mc.lineTo(200, 100);
draw_mc.lineTo(200, 200);
draw_mc.lineTo(100, 200);
draw_mc.lineTo(100, 100);

那你创建一个自定义函数
每次画很少的一点点
再使用周期时间回调
也就是以一定时间间隔调用这个函数
新建一个文件把下面的代码写到第一帧就可以了

var itvl:Number;
var start_x:Number = 100;//绘画起点x坐标
var start_y:Number = 100;//绘画起点y坐标
this.createEmptyMovieClip("draw_mc", 1); // 创建一个影片剪辑
draw_mc.lineStyle(1, 0x000000); // 设置线条样式(粗细为1, 颜色为黑色)
draw_mc.moveTo(start_x, start_y); // 绘画的起点(100, 100)
// 自定义绘画函数
function drawByOne() {
draw_mc.lineTo(++start_x, ++start_y);// 画到某一点,这一点是每次都把x和y坐标加上1,++x的意思就是x = x + 1;
if (start_x == 200) {// 当画到x坐标等于200的时候,停止绘画
clearInterval(itvl);// 停止周期回调
}
}
itvl = setInterval(drawByOne, 100);//使用周期回调函数,每隔1