Este ejemplo muestra cómo rellenar un movieClip con un gradiente entre 2 colores usando el método
beginGradientFill:
El código utilizado es el siguiente:
import flash.geom.*;
function gradiente(color1,color2,obj,ancho,alto,tipo){
var fillType:String = "linear"
var colors:Array = [color1,color2];
var alphas:Array = [100, 100];
var ratios:Array = [0, 255];
var matrix:Matrix = new Matrix();
var r=tipo?0:1.57;
matrix.createGradientBox(ancho, alto, r, 0, 0);
var spreadMethod:String = "pad";
obj.beginGradientFill(fillType, colors, alphas, ratios, matrix, spreadMethod);
with(obj){
moveTo(0, 0);
lineTo(ancho, 0);
lineTo(ancho, alto);
lineTo(0, alto);
lineTo(0, 0);
endFill();
}
}
var pp=this.createEmptyMovieClip('pp',this.getNextHighestDepth());
var pp2=this.createEmptyMovieClip('pp2',this.getNextHighestDepth());
gradiente(0xFF0000,0xFFFF00,pp,400,100,0);
pp2._y=102;
gradiente(0xFF0000,0xFFFF00,pp2,400,100,1);
Como vemos, quien hace todo el trabajo es la función
gradiente, la cual requiere los siguientes argumentos:
color1,
color2: colores desde y hasta del gradiente
obj: clip a rellenar
ancho,
alto: dimensiones del relleno
tipo: 0=vertical, 1=horizontal