Comunidad de diseño web y desarrollo en internet online

SetMask

Citar            
MensajeEscrito el 19 Mar 2006 02:16 am
Hola:

Estoy intentando hacer el siguiente ejercicio.

Me piden que cargue desde la biblioteca una serie de fotos, y que les aplique una máscara para poder realizar un _alpha progresivo.

Hasta ahora tengo esto:

Código :

var lista_fotos:Array = new Array();
for (var i = 0; i<5; i++) {
   lista_fotos[i] = "f"+[i+1];
}
var mc1:MovieClip = attachMovie("f"+Math.floor(Math.random()*lista_fotos.length), "foto", 10);
var mc2:MovieClip = attachMovie("mascara", "mascara1", 11);
mc1._x = mc1._y=0;
mc2._x = mc2._y=0;
mc1._width = mc1._height=300;
mc1.setMask(mc2);


Las fotos cargan a capricho, es decir con el random, pero hay dos cosas un tanto curiosas.

1º: Son 5 fotos las que hay en la biblioteca preo por más veces que recargo el flash sólo aparecen 4 y en la 5ª aparece "mc2" con el _alpha. A qué se puede deber esto?

2º:Como ya digo, pretendo hacer de "mc2" una máscara pero no se plica como tal sobre "mc1". Cómo se puede hacer una máscara con AS?

A ver si me pueden explicar un poco.

Gracias.

Por Jose M

5 de clabLevel



Genero:Masculino  

España

firefox
Citar            
MensajeEscrito el 19 Mar 2006 08:47 am
No entendí nada de lo que quieres hacer... lo puedes repetir?

Por _CONEJO

BOFH

7639 de clabLevel

17 tutoriales
21 articulos

 

clabbrowser
Citar            
MensajeEscrito el 19 Mar 2006 09:49 am

ICEM4N escribió:

No entendí nada de lo que quieres hacer... lo puedes repetir?


Por supuesto:

Necesito aplicar una máscara sobre otro "MovieClip" que carga fotografías.

Quiero además aplicarlo con la instrucción "setMask".

Lo puedo hacer mediante modo diseño?, si, pero soy mas chulo que un 8 con cinturón y lo quiero hacer con AS. 8)

^---Es broma.

Me lo piden para hacer en AS, exigencias del guión.

El problema es... que no me sale, porque aparecen 4 de las 5 fotos sin máscara y con "_alpha" a 100, y la última ya ni aparece, y en su lugar aparece la máscara, eso sí, con el efecto "_alpha".

Entonces sé que en el código anterior realicé algo mal, y no sé que es.

Espero haber sido un poco más claro, además tengan paciencia que estoy empezando con AS.

Gracias por responder.

Por Jose M

5 de clabLevel



Genero:Masculino  

España

opera
Citar            
MensajeEscrito el 19 Mar 2006 11:52 am

Código :

var lista_fotos:Array = new Array();
for (var i = 0; i<5; i++) {
   lista_fotos[i] = "f"+[i+1];
}
var mc1:MovieClip = attachMovie("f"+Math.floor(Math.random()*lista_fotos.length), "foto", 10);
var mc2:MovieClip = attachMovie("mascara", "mascara1", 11);
mc1._x = mc1._y=0;
mc2._x = mc2._y=0;
mc1._width = mc1._height=300;
mc1.setMask(mc2);

Generará un número entre 0 y 5 solo que 5 solo lo alcanzará MUY rara vez, cuando Math.random() sea ==1 (floor redondea hacia abajo, entonces un 4.99999999999999999999 se queda en 4!
Por lo demás está "bien", salvo que no veo que "efecto alfa" usas(si la máscara lleva un degradado deberás de publicar en Flash 8...

Por _CONEJO

BOFH

7639 de clabLevel

17 tutoriales
21 articulos

 

clabbrowser
Citar            
MensajeEscrito el 19 Mar 2006 04:47 pm
Intento aplicar un setmask pero no lo hago bien.

Gracias de todas formas.

PD: El efecto _alpha está dentro de la máscara.

Por Jose M

5 de clabLevel



Genero:Masculino  

España

firefox
Citar            
MensajeEscrito el 19 Mar 2006 05:44 pm
una máscara con alfa? ugh... creo que eso no es posible... prueba con colores planos

Por _CONEJO

BOFH

7639 de clabLevel

17 tutoriales
21 articulos

 

clabbrowser
Citar            
MensajeEscrito el 21 Mar 2006 01:13 am
1. Las mascaras son AGUJEROS...al agujero no le podes poner alfa..sigue siendo agujero...
2. El setMask no funciona porque intentas atachar la foto y hacer la mascara en el MISMO frame...coloca la foto primero en un frame, deja pasar unos frames, 4 o 5, luego aplicales setMask.
3. Para que "entre" con alfa, tenes que colocar la foto dentro de un clip, ESTE clip lo degradas entre un frame y otro, ojo, ponele STOP al principio para que no se "degrade" mientras estan transcurriendo los 5 frames del setMask, solo cuando está ya el set mask hace que el clip de degradacion se inicie.

Espero haber ayudado.

Por La_Gata

123 de clabLevel



 

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.