万卷书   首页 > 电脑书籍 > Flash > FlashMX Action画线方法(中)
 

  这是段很工整的as,下边的这个例子中你可以脱拽三个句柄来实时改变三角形的形状、位置、大小等。

  下边是核心代码:

// 在舞台上放置3个句柄来定义出三角形的各个顶点
_root.attachMovie("squareHandle", "h1", 5);
_root.attachMovie("squareHandle", "h2", 6);
_root.attachMovie("squareHandle", "h3", 7);
h1._x = 50;
h1._y = 150;
h2._x = 250;
h2._y = 150;
h3._x = 150;
h3._y = 50;
// 创建一个空的MC来放置他们
_root.createEmptyMovieClip("mc", 1);
// 定义函数draw
function draw() {
// 清除以前的填充设置
mc.clear();
// 设置填充的各项参数
mc.beginFill(0x0000FF, 20);
// 根据3个句柄的位置绘制出三角形
mc.moveTo(h1._x, h1._y);
mc.lineTo(h2._x, h2._y);
mc.lineTo(h3._x, h3._y);
mc.lineTo(h1._x, h1._y);
// 结束Fill
mc.endFill();
}
// 使函数draw每隔25毫秒刷新一次
setInterval(draw, 25);
// 完成as

MovieClip.clear()

  在上边的as中我们遇到了这个新的指令mc.clear();它的作用就是清除mc。包括对这个mc本身的设置和mc中所包含的物件,并且将虚拟钢笔的各项参数恢复到默认值。

  举例说明:

  在本文的开始我们就已提到及时清除绘制过的、没有用的线条或形状的必要性,使用clear可以及时的释放内存空间而不至于造成系统崩溃。但由于它清除了所有的物件,当你想要保留某个物件的时候你就不得不再次把它“绘制”出来。
下边是例子:

  下一节我们将介绍如何利用as绘制弧线。

上一页