如何在AS3中更改movieClip的渐变填充

时间:2012-05-16 12:25:05

标签: actionscript-3 flash adobe gradient colortransform

假设我在舞台上有一个复杂形状的MovieClip,渐变色(A - > B),我想在运行时更改渐变的开始和结束颜色。

有可能吗?

1 个答案:

答案 0 :(得分:2)

如果您用鼠标绘制此MovieClip,则无法实现。如果你想这样做,你可以在一个矩形的MovieClip中使用渐变,并在其上面加一个遮罩。蒙版将具有当前渐变的形状。然后在AS3中,您可以重绘MovieClip中的渐变(在下面的示例中称为gradientZone)。

var matr:Matrix = new Matrix();
matr.createGradientBox(gradientZone.width, gradientZone.height, 0, 0, 0);
gradientZone.graphics.clear();
gradientZone.graphics.beginGradientFill(GradientType.LINEAR, [0xFF0000, 0x0000FF], [1, 1], [0x00, 0xFF], matr);        
gradientZone.graphics.drawRect(0,0,gradientZone.width, gradientZone.height);