domingo, 26 de febrero de 2012

Uso de filtros con AS3


Los filtros son efectos de mapa de bits que pueden ser aplicado a cualquier objeto que se visualiza en un entorno flash, mediante el panel IDE o mediante código; se puede aplicar diferentes filtros a un objeto como ser sombras, brillo, bisel, gradientes, etc. Primero se debe de crear un filtro, para esto primero utilizamos estas sentencias de código: Llamada a paquetes que necesita:
import flash.filters.BlurFilter;
Luego dentro de nuestro método creamos una variable llamada desenfoque:
var desenfoque:BlurFilter = new BlurFilter(5, 5, 3);
Con esos parámetros indicamos el desenfoque que tendrán tanto en el eje x=5 e y=5, además de una calidad de definición de desenfoque de 3, cualquier objeto en particular tiene su propiedad filtros, esta es una matriz que tiene todos los filtros que pueden ser aplicados a un objeto y un objeto puede tener varios objetos aplicados; esta sería una forma de aplicar filtros a un objetos.
package
{
 import flash.display.Sprite;
 import flash.filters.BlurFilter;
 
 public class Filtros extends Sprite{
  public function Filtros(){
   init();
  }
  private function init():void{
   var sprite:Sprite = new Sprite();
   sprite.graphics.lineStyle(2);
   sprite.graphics.beginFill(0xccccff);
   sprite.graphics.drawCircle(150,150,50);
   sprite.graphics.endFill();
   addChild(sprite);
   //esta es la manera larga
   //var desenfoque:BlurFilter = new BlurFilter(5,5,3);
   //var filters:Array = new Array();
   //filters.push(desenfoque);
   //sprite.filters = filters;
   //---------------------------------------------------------
   //esta es otra forma
   //var desenfoque:BlurFilter = new BlurFilter(5,5,3);
   //var filters:Array = [desenfoque];
   //sprite.filters = filters;
   //---------------------------------------------------------
   //y la forma mas resumida
   sprite.filters = [new BlurFilter(5,5,3)];
   
  }
 }
}
La matriz de filtros siempre se crea como una matriz vacía y solo se tiene que obtener una referencia a esa matriz y asignarle una nueva propiedad, así ese filtro se añadirá al objeto. Existen otras formas de hacer lo mismo… como el método de concatenación:
Sprite.filters = sprite.filters.concat(new BlurFilter(5,5,3));
Con la cual se obtiene una matriz con los filtros asignados. Este seria el resultado obtenido: 

Related Posts:

  • Proyecto Somos Agua (Parte I)Ya ha finalizado el semestre y las cosas salen un poco mejor de lo que esperaba y aunque estoy ocupado con todos los otros trabajos, proyectos y demás; me daré formas para seguir escribiendo y contando algunos de los proyecto… Read More
  • Eventos usados en una animación básica Con el uso de la función onEnterFrame se busca que en cada iteración se produzca la animación deseada, esto se lograra por medio del detector de eventos.Nuestra función init(), crea un nuevo objeto Sprite que es el circulo q… Read More
  • Animación con funciones trigonométricas (parte 1) Comenzando otro mes, me parece q está más cerca el próximo año de lo que espere, este mes tengo planeado hacer una compra muy importante para mí por lo que debo de trabajar el doble para darme un regalito en navidad y al… Read More
  • Interacción con el Usuario Una de las principales razones por las que se añade código a nuestros trabajos en flash es para tener una interacción con el usuario, aunque en sus inicios flash fue visto como un programa para hacer banner´s como muchas per… Read More
  • Dibujo básico con API de AS3 La funcionalidad que tiene el entorno de flash para crear todo el arte que tendrá nuestros proyectos hace de flash una herramienta por demás “poderosa”, para el desarrollo del trabajo que se quiera hacer en el mismo. Ade… Read More