-1

我正在尝试理解动作脚本中的掩码..一切对我来说似乎都有意义,但代码的一部分

function mouseM(event:MouseEvent):void {
if (mouseclick == 1) {
mask_mc.graphics.beginFill(0x000000);
mask_mc.graphics.drawEllipse(mouseX, mouseY, 70, 60);
mask_mc.graphics.endFill();
}
}

我不确定如何准确地问这个问题,但它就在这里。为什么面具的“开始填充”是黑色的?那不会将图像涂成黑色(我知道它不会,它只是显示它)?beginfill 的确切功能是什么(除了显示图像lool)?就像它是如何工作的?抱歉,如果这听起来很荒谬……但是那部分代码真的让我在理解面具方面搞砸了

4

1 回答 1

1

您正在做的是绘制一个用作蒙版的形状。在这种情况下,一个圆圈。

它是什么颜色并不重要,因为 Flash 只对蒙版的形状感兴趣,而不是颜色。

画完圆圈后,Flash 会检查圆圈的哪个部分与您要遮盖的对象重叠,这样圆圈覆盖的每个像素都将不可见。我想它真的应该被称为反蒙版,因为圆圈指示图像的哪些部分不会被蒙版,但将圆圈(或您使用的任何形状)称为蒙版已成为一般惯例。

同样,您只是在创建一个用作蒙版的形状。设置颜色只是为了让对象本质上存在..因为你不能完全有一个透明的圆圈。

随意将颜色更改为任何颜色,您会发现它没有区别,形状才是最重要的。

于 2013-02-17T03:01:39.737 回答