Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/05/2008, 03:26
Avatar de Mahalo
Mahalo
 
Fecha de Ingreso: julio-2004
Ubicación: Mallorca (Illes Balears)
Mensajes: 1.121
Antigüedad: 19 años, 9 meses
Puntos: 12
Respuesta: Como se hace este efecto

Supongo que te refieres a hacerlo sin tener que cargar imágenes en blanco y negro además de las originales en color. Mira este código que depende de que en el escenario haya un clip de película con nombre de instancia 'foto' que contenga la imagen en color:
Código:
function aplicaBlancoNegro(event:MouseEvent) {
	var matrix:Array = new Array();
	switch (event.type) {
		// Se carga la matriz correspondiente.
		case "mouseOver":
			matrix = matrix.concat([0.5, 0.5, 0.5, 0, 0]);
			matrix = matrix.concat([0.5, 0.5, 0.5, 0, 0]);
			matrix = matrix.concat([0.5, 0.5, 0.5, 0, 0]);
			matrix = matrix.concat([0, 0, 0, 1, 0]);
			break;
		case "mouseOut":
			matrix = matrix.concat([1, 0, 0, 0, 0]);
			matrix = matrix.concat([0, 1, 0, 0, 0]);
			matrix = matrix.concat([0, 0, 1, 0, 0]);
			matrix = matrix.concat([0, 0, 0, 1, 0]);
			break;
	}
	// Se aplica el filtro.
	var filter:ColorMatrixFilter = new ColorMatrixFilter(matrix);
	var f:Array = new Array();
	f.push(filter);
	foto.filters = f;
}
foto.addEventListener(MouseEvent.MOUSE_OVER, aplicaBlancoNegro);
foto.addEventListener(MouseEvent.MOUSE_OUT, aplicaBlancoNegro);
Cambiando los valores de la matriz puedes obtener tonalidades diferentes.
Si quieres hacerlo con javascript, pregunta en el foro de javascript.
Saludos!
__________________
Los ignorantes se empeñan en enseñar. Los sabios en aprender.
SourceForge