Colocar Um Gradiente Em Um Objeto
#1
Posted 28/04/2004, 17:50
tipo..
cor= new Color();
cor.setRBG(0x000000);
mas tipo.....pra eu colocar duas cores em um objeto?
mas com um efeito gradiente?
como eu faria isso??
mas por favor, ao colorem um codigo complexo, por favor...faça uma explicacao das linhas se possivel,
pq eu tenho dificuldades em aprender as coisas certinho...
obrigada, bjs
tchau!!
#2
Posted 28/04/2004, 21:04
Alguém explicará o código pra você...
velocidadeVermelhoI = .1; velocidadeVerdeI = .07; velocidadeAzulI = .04; velocidadeVermelhoII = .09; velocidadeVerdeII = .06; velocidadeAzulII = .03; velocidaderotacao = .01; onEnterFrame = function() { anguloVermelhoI += velocidadeVermelho1; anguloVerdeI += velocidadeVerde1; anguloAzulI += velocidadeAzul1; anguloVermelhoII += velocidadeVermelho2; anguloVerdeII += velocidadeVerde2; anguloAzulII +=velocidadeAzul2; VermelhoI = Math.sin(anguloVermelho1)*127+128 VerdeI = Math.sin(anguloVerde1)*127+128 AzulI = Math.sin(anguloAzul1)*127+128 VermelhoII = Math.sin(anguloVermelho2)*127+128 VerdeII = Math.sin(anguloVerde2)*127+128 AzulII = Math.sin(anguloAzul2)*127+128 colI = VermelhoI << 16 | VerdeI << 8 | AzulI; colII = VermelhoII << 16 | VerdeII << 8 | AzulII; rot = Math.sin(angulorotacao += velocidaderotacao)*math.PI; cores = [colI, colII]; alphas = [100, 100]; radianos = [0, 255]; matriz = {matrixType:"box", x:0, y:0, h:400, w:550, r:rot}; clear(); beginGradientFill("linear", cores, alphas, radianos, matriz); lineTo(550, 0); lineTo(550, 400); lineTo(0, 400); lineTo(0, 0); endFill(); };
Fonte do Código: http://forum.plugmasters.com.br/
Mas podes me chamar de Lord
#3
Posted 28/04/2004, 21:49
um jeito que dá pra se fazer é com máscara:
//o movieclip que receberá o efieto tem nome de instância mc createEmptyMovieClip("gradiente", getNextHighestDepth()) //cria um novo movieclip with (gradiente) { //direciona a ação pro movieclip gradiente matriz = { matrixType:"box", x:0, y:0, w:mc._width, h:mc._height, r:0 } //parâmetro de medidas pro gradientFill beginGradientFill("linear", [0xFF0000, 0x0000F], [100, 100], [0, 255], matriz)// cria um preenchimento gradiente //aqui é criado um quadrado com as medidas do mc moveTo(0, 0) lineTo(mc._width, 0) lineTo(mc._width, mc._height) lineTo(0, mc._height) endFill() //alinha o gradiente com o mc _x = mc._x _y = mc._y } gradiente.setMask(mc) //cria a máscara
#4
Posted 29/04/2004, 00:28
eu tentei no MX e nao apareceu nada nao,
eu coloquei isso no primeiro frame do meu filme...e nada................pq??
brigada, bjs
tchau!
#5
Posted 29/04/2004, 08:25
//cria o movieclip em branco chamado grad no nivel 1 _root.createEmptyMovieClip( "grad", 1 ); //direciona a ação pro movieclip grad with ( _root.grad ) { colors = [ 0xFF0000, 0x0000FF ]; //seta as cores alphas = [ 100, 100 ]; //seta o alpha ratios = [ 0, 0xFF ]; //proporcoes matrix = { a:200, b:0, c:0, d:0, e:200, f:0, g:200, h:200, i:1 }; /parâmetro de medidas pro gradientFill beginGradientFill( "linear", colors, alphas, ratios, matrix ); //cria o gradiente do tipo linear //agora vamos fazer um desenho atraves do as //movemos o clip para a posicao x,y moveTo(100,100); //criamos as linhas lineTo(100,300); lineTo(300,300); lineTo(300,100); lineTo(100,100); //terminamos o preenchimento endFill(); }
#6
Posted 29/04/2004, 13:47
agora funcionou perfeitamente......hehe
brigada, mesmo....soh mais uam cosia,
vc pode me explicar essas linhas??
colors = [ 0xFF0000, 0x0000FF ]; alphas = [ 100, 100 ]; ratios = [ 0, 0xFF ]; matrix = { a:200, b:0, c:0, d:0, e:200, f:0, g:200, h:200, i:1 }; beginGradientFill( "linear", colors, alphas, ratios, matrix );
eu nao entendi praticamente nada deas..
brigada, bjs
tchai!!!!
#7
Posted 29/04/2004, 20:21
//o movieclip que receberá o efieto tem nome de instância mc createEmptyMovieClip("gradiente", getNextHighestDepth()) //cria um novo movieclip with (gradiente) { //direciona a ação pro movieclip gradiente matriz = { matrixType:"box", x:0, y:0, w:mc._width, h:mc._height, r:0 } //parâmetro de medidas pro gradientFill beginGradientFill("linear", [0xFF0000, 0x0000F], [100, 100], [0, 255], matriz)// cria um preenchimento gradiente //aqui é criado um quadrado com as medidas do mc moveTo(0, 0) lineTo(mc._width, 0) lineTo(mc._width, mc._height) lineTo(0, mc._height) endFill() //alinha o gradiente com o mc _x = mc._x _y = mc._y } gradiente.setMask(mc) //cria a máscara
parâmetros do gradientFill:
matriz = { matrixType:"box", x:0, y:0, w:mc._width, h:mc._height, r:0 }
beginGradientFill("linear", [0xFF0000, 0x0000F], [100, 100], [0, 255], matriz)
o 1° é o tipo de gradiente: linear ou radial. o 2° são as cores usadas no gradiente. o 3° são os valores de alfa usados no gradiente. o 4° é a posição de 0 a 255 de cada cor no gradiente. o 5° é uma matriz de transformação que coloca as propriedades x, y, largura, altura e rotação em radianos do gradiente. se eu quizesse, por exemplo, colocar 3 cores divididas igualmente entre o gradiente(vermelho, azul e verde), com alphas 100, 75 e 50, ocupando a metade do objeto e centralizado nele, com um ângulo de 45°, eu usaria:
matriz = { matrixType:"box", x:mc._width/4, y:0, w:mc._width/2, h:mc._height/2, r:45/180*Math.PI } beginGradientFill("linear", [0xFF0000, 0x0000FF, 0x00FF00], [100, 75, 50], [0, 128, 255], matriz)
#8
Posted 30/04/2004, 00:53
tem jeito de explciar ele de novo?
brigada, bjs
tchau!
#9
Posted 30/04/2004, 07:26
#10
Posted 30/04/2004, 15:06
brigada, bjs
tchau!
#11
Posted 30/04/2004, 19:43
beginGradientFill("linear", [0xFF0000, 0x0000FF, 0x00FF00], [100, 75, 50], [0, 220, 255], matriz)
#12
Posted 01/05/2004, 00:06
o mei odas duas cores.....?
no caso desse seu exemplo , o 220, seria bem o meio do 0000ff e do 00ff00 ????
brigada, bjs
tchau!
#13
Posted 01/05/2004, 00:29
tipo, ao em vez de fazer ele ir dum lado pro outro, ele ir de cima pra baixo?
como eu faco isso?
brigada, bjs
tchau!
#14
Posted 01/05/2004, 13:09
pra ficar de cima pra baixo é só mudar o ângulo:
matriz = { matrixType:"box", x:mc._width/4, y:0, w:mc._width/2, h:mc._height/2, r:Math.PI }
beginGradientFill("linear", [0xFF0000, 0x0000FF, 0x00FF00], [100, 75, 50], [0, 128, 255], matriz)
#15
Posted 01/05/2004, 13:41
brigada, bjs
tchau!
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)