Unidad 20. Ejercicio: Carga y modificación de filtros



Objetivo

Cargar filtros mediante ActionScript dándoles las propiedades que queramos.

Al final conseguiremos una película como este ejemplo:

El contenido de esta página requiere una versión más reciente de Adobe Flash Player.

Obtener Adobe Flash Player

Ejercicio paso a paso.

  1. Abre el archivo pez.fla que encontrarás en la carpeta ejercicios/pez del curso, observa que tanto los campos del formulario como el clip de película ya tienen un nombre de instancia asignado.
  2. Abre el Panel Acciones desde VentanaAcciones o pulsando la tecla F9.
  3. Elimina la línea que dice
    //código para añadir el filtro
    y escribe lo siguiente en su lugar:
    import flash.filters.DropShadowFilter;
    Esto hará que el filtro se importe a la película. Normalmente no es necesario porque trabajamos en el panel de acciones, pero si lo necesitamos si trabajamos, por ejempolo, en un archivo as externo.
  4. Despues de esto escribe:
    var sombra:DropShadowFilter = new DropShadowFilter();
    Hemos creado una variable llamada sombra que es un filtro de Sombra.
  5. Como tenemos que asociar el cambio de efecto al botón aplicar, creamos la función que controla al evento:
    btn_aplicar.addEventListener(MouseEvent.CLICK, cambiarSombra);
    function cambiarSombra(event):void {
    
    }
  6. Luego accederemos a las propiedades de sombra y le daremos los valores que hay en los campos del formulario. Todo esto, dentro de la función que se ejecutará al pusar el botón:
      sombra.distance = distance_stp.value;
      sombra.angle = angle_stp.value;
      sombra.color = 0x000000;
      sombra.alpha = alpha_stp.value;
      sombra.blurX = blur_stp.value;
      sombra.blurY = blur_stp.value;
      sombra.strength = strength_stp.value;
      sombra.quality = quality_cmb.selectedItem.data;
      sombra.inner = inner_chk.selected;
      sombra.knockout = knockout_chk.selected;
      sombra.hideObject = hideObject_chk.selected;
  7. Finalmente asociamos el filtro sombra que hemos creado a la propiedad filters del clip, también dentro de la función:
    pez.filters = [sombra];

Hemos creado una película donde podemos cambiar las propiedades de un filtro dinámicamente.



   Inicio    







.