SlideShare una empresa de Scribd logo
1 de 14
FUNCIONAMIENTO DE LOS FILTROS    DINA LUCIA ALMANZARITA LUCIA MUÑOZCARLOS ANDRÉS MARTÍNEZ
FUNCIONAMIENTO DE LOS FILTROS Al aplicar un filtro a un objeto de visualización, se crea en caché una copia del objeto original como un mapa de bits transparente. Una vez que un filtro se ha aplicado a un objeto de visualización, Adobe Flash Player almacena en caché el objeto como un mapa de bits mientras éste mantiene una lista de filtros válida.
    Este mapa de bits de origen se usa luego como imagen original para todas las aplicaciones posteriores de efectos de filtros.     Normalmente, un objeto de visualización contiene dos mapas de bits: uno con el objeto de visualización de origen sin filtrar (original) y otro con la imagen final una vez filtrada. La imagen final se usa en la representación. Mientras el objeto de visualización no cambie, la imagen final no necesita actualización.
FILTROS Y CACHÉ DE MAPAS DE BITS     Para aplicar un filtro a un objeto de visualización, debe estar activada la caché de mapa de bits para ese objeto. Al aplicar un filtro a un objeto de visualización cuya propiedad cacheAsBitmap tiene el valor false, Flash Player automáticamente establece el valor de la propiedad cacheAsBitmap del objeto como true. Si más adelante se quitan todos los filtros del objeto de visualización, Flash Player restablecer el valor que la propiedad cacheAsBitmap tenía con anterioridad.
CAMBIO DE FILTROS EN TIEMPO DE EJECUCIÓN     Si un objeto de visualización tiene uno o más filtros aplicados, no es posible añadir más filtros a la matriz de la propiedad filters. En vez de eso, para añadir filtros o cambiar el conjunto de filtros aplicados, es necesario crear una copia de toda la matriz filters y realizar las modificaciones en esta matriz provisional.      A continuación, esa matriz se vuelve a asignar a la propiedad filters del objeto de visualización para que los filtros se apliquen al objeto. Este proceso se muestra en el siguiente código. Inicialmente se aplica un filtro de iluminado al objeto de visualización llamado myDisplayObject; luego, cuando se hace clic en el objeto, se llama a la función addFilters(). Mediante esta función se aplican dos filtros más a myDisplayObject:
import flash.events.MouseEvent; import flash.filters.*; myDisplayObject.filters = [new GlowFilter()]; function addFilters(event:MouseEvent):void { // Hacer una copia de la matriz de filtros. var filtersCopy:Array = myDisplayObject.filters; // Realizar los cambios deseados en los filtros (en este caso, // añadiendo filtros). filtersCopy.push(new BlurFilter()); filtersCopy.push(new DropShadowFilter()); // Aplicar los cambios reasignando la matriz a la propiedad filters. myDisplayObject.filters = filtersCopy; }   myDisplayObject.addEventListener(MouseEvent.CLICK,addFilters);
FILTROS Y TRANSFORMACIONES DE OBJETOS       Ninguna región filtrada (una sombra, por ejemplo) que se encuentre fuera del recuadro de delimitación rectangular de un objeto de visualización se considera parte de la superficie a efectos de la detección de colisiones (determinar si una instancia se solapa o corta con otra instancia). Dado que los métodos de detección de colisiones de la clase DisplayObject se basan en vectores, no es posible llevar a cabo esta operación sobre un resultado que es un mapa de bits. Por ejemplo, si se aplica un filtro de bisel a una instancia de botón, la detección de colisiones no estará disponible en la parte biselada de la instancia.
FILTROS Y OBJETOS DE MAPAS DE BITS       Al aplicar un filtro a un objeto BitmapData, la propiedad cacheAsBitmap toma automáticamente el valor true. De este modo, el filtro se aplica en realidad a la copia del objeto en lugar de al original.      Esta copia se coloca a continuación en la visualización principal (sobre el objeto original) tan cerca como sea posible del píxel más cercano. Si los límites del mapa de bits original cambian, la copia del mapa de bits con el filtro se vuelve a crear de nuevo en lugar de estirarla o distorsionarla. Si se quitan todos los filtros de un objeto de visualización, se restablece el valor que la propiedad cacheAsBitmap tenía antes de aplicarse el filtro
FILTRO DE BISEL     La clase BevelFilter permite añadir un borde biselado tridimensional al objeto filtrado. Este filtro hace que las esquinas o bordes duros del objeto adquieran una apariencia cincelada o biselada.      Las propiedades de la clase BevelFilter permiten personalizar la apariencia del bisel. Se pueden definir los colores de iluminación y sombra, el desenfoque de los bordes del bisel, los ángulos de biselado y la colocación de los bordes del bisel; incluso se puede crear un efecto extractor.
EN EL SIGUIENTE EJEMPLO SE CARGA UNA IMAGEN EXTERNA Y SE LE APLICA UN FILTRO DE BISEL. import flash.display.*; import flash.filters.BevelFilter; import flash.filters.BitmapFilterQuality; import flash.filters.BitmapFilterType; import flash.net.URLRequest; // Cargar una imagen en el escenario. var imageLoader:Loader = new Loader(); var url:String = "http://www.helpexamples.com/flash/images/image3.jpg"; var urlReq:URLRequest = new URLRequest(url); imageLoader.load(urlReq); addChild(imageLoader); // Crear el filtro de bisel y definir sus propiedades. var bevel:BevelFilter = new BevelFilter(); bevel.distance = 5; bevel.angle = 45; bevel.highlightColor = 0xFFFF00; bevel.highlightAlpha = 0.8; bevel.shadowColor = 0x666666; bevel.shadowAlpha = 0.8; bevel.blurX = 5; bevel.blurY = 5; bevel.strength = 5; bevel.quality = BitmapFilterQuality.HIGH; bevel.type = BitmapFilterType.INNER; bevel.knockout = false; // Aplicar el filtro a la imagen. imageLoader.filters = [bevel];
FILTRO DE DESENFOQUE      La clase BlurFilter difumina, o desenfoca, un objeto de visualización y su contenido. Los efectos de desenfoque resultan útiles para dar la impresión de que un objeto no está bien enfocado o para simular un movimiento rápido, como en el desenfoque por movimiento. Si se define la propiedad quality del filtro de desenfoque en un nivel bajo, se puede simular un efecto de lente ligeramente desenfocada. Si la propiedad quality se establece en un nivel alto, da lugar a un efecto de desenfoque suave similar a un desenfoque gaussiano.
      EN EL SIGUIENTE EJEMPLO SE CREA UN OBJETO CIRCULAR USANDO EL MÉTODO DRAWCIRCLE() DE LA CLASE GRAPHICS Y SE LE APLICA UN EFECTO DE DESENFOQUE: import flash.display.Sprite; import flash.filters.BitmapFilterQuality; import flash.filters.BlurFilter; // Dibujar un círculo. var redDotCutout:Sprite = new Sprite(); redDotCutout.graphics.lineStyle(); redDotCutout.graphics.beginFill(0xFF0000); redDotCutout.graphics.drawCircle(145, 90, 25); redDotCutout.graphics.endFill(); // Añadir el círculo a la lista de visualización. addChild(redDotCutout); // Aplicar el filtro de desenfoque al rectángulo. var blur:BlurFilter = new BlurFilter(); blur.blurX = 10; blur.blurY = 10; blur.quality = BitmapFilterQuality.MEDIUM; redDotCutout.filters = [blur];
FILTRO DE SOMBRA  Las sombras dan la impresión de que existe una fuente de luz independiente situada sobre el objeto de destino. La posición e intensidad de esta fuente de luz se puede modificar para originar toda una gama de distintos efectos de sombra.      El filtro de sombra usa un algoritmo similar al del filtro de desenfoque. La principal diferencia es que el filtro de sombra tiene unas pocas propiedades más que se pueden modificar para simular los distintos atributos de la fuente de luz (como alfa, color, desplazamiento y brillo).      El filtro de sombra también permite aplicar opciones de transformación personalizadas sobre el estilo de la sombra, incluidas la sombra interior o exterior y el modo extractor (también conocido como silueta).
 EL SIGUIENTE CÓDIGO CREA UNA UN OBJETO SPRITE CUADRADO Y LE APLICA UN FILTRO DE SOMBRA: import flash.display.Sprite; import flash.filters.DropShadowFilter; // Dibujar un cuadrado. var boxShadow:Sprite = new Sprite(); boxShadow.graphics.lineStyle(1); boxShadow.graphics.beginFill(0xFF3300); boxShadow.graphics.drawRect(0, 0, 100, 100); boxShadow.graphics.endFill(); addChild(boxShadow); // Aplicar el filtro de sombra al cuadrado. var shadow:DropShadowFilter = new DropShadowFilter(); shadow.distance = 10; shadow.angle = 25; // También se pueden establecer otras propiedades, como el color // de la sombra, el alfa, el desenfoque, la fuerza, la calidad // y las opciones de los efectos de sombra interior y extractor. boxShadow.filters = [shadow];

Más contenido relacionado

Similar a Funcionamiento De Los Filtros

Similar a Funcionamiento De Los Filtros (20)

Filtros en flash
Filtros en flashFiltros en flash
Filtros en flash
 
Filtros y capas
Filtros y capasFiltros y capas
Filtros y capas
 
Xxx
XxxXxx
Xxx
 
Imagen Filtrado Espacial
Imagen Filtrado EspacialImagen Filtrado Espacial
Imagen Filtrado Espacial
 
Presentacion Patrones De Diseno GoF
Presentacion Patrones De Diseno GoFPresentacion Patrones De Diseno GoF
Presentacion Patrones De Diseno GoF
 
Colegio nacional nicolás esquerra
Colegio nacional nicolás esquerraColegio nacional nicolás esquerra
Colegio nacional nicolás esquerra
 
Aplicación abc. asp net mvc 3
Aplicación abc. asp net mvc 3Aplicación abc. asp net mvc 3
Aplicación abc. asp net mvc 3
 
3d max
3d max3d max
3d max
 
3d max
3d max3d max
3d max
 
Adobe flash-cs5
Adobe flash-cs5Adobe flash-cs5
Adobe flash-cs5
 
Sesion 02 clases en_vb_net
Sesion 02 clases en_vb_netSesion 02 clases en_vb_net
Sesion 02 clases en_vb_net
 
Alejandro 3d
Alejandro 3dAlejandro 3d
Alejandro 3d
 
3d1
3d13d1
3d1
 
3d1
3d13d1
3d1
 
3d1
3d13d1
3d1
 
ActionScript 3 - Iniciación
ActionScript 3 - IniciaciónActionScript 3 - Iniciación
ActionScript 3 - Iniciación
 
Primeros Pasos 3D Max
Primeros Pasos 3D MaxPrimeros Pasos 3D Max
Primeros Pasos 3D Max
 
Sistema de visión artificial para el reconocimiento y
Sistema de visión artificial para el reconocimiento ySistema de visión artificial para el reconocimiento y
Sistema de visión artificial para el reconocimiento y
 
Primeros pasos con 3 ds max
Primeros pasos con 3 ds maxPrimeros pasos con 3 ds max
Primeros pasos con 3 ds max
 
Colegio nacional nicolás esguerra
Colegio nacional nicolás esguerraColegio nacional nicolás esguerra
Colegio nacional nicolás esguerra
 

Último

2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...TaniaCruzInga
 
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxSostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxmarlonrea6
 
liderazgo guia.pdf.............................
liderazgo guia.pdf.............................liderazgo guia.pdf.............................
liderazgo guia.pdf.............................MIGUELANGELLEGUIAGUZ
 
implemenatcion de un data mart en logistica
implemenatcion de un data mart en logisticaimplemenatcion de un data mart en logistica
implemenatcion de un data mart en logisticaghgfhhgf
 
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edxEvafabi
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industralmaria diaz
 
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBREDISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBREdianayarelii17
 
2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptxRicardo113759
 
Analisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la RentaAnalisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la Rentamarbin6
 
Distribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestreDistribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestreAndresUseda3
 
HIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptx
HIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptxHIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptx
HIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptxTecvalSAS2
 
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(HelenDanielaGuaruaBo
 
Fabricación de Cremas en Industria Farmacéutica
Fabricación de Cremas en Industria FarmacéuticaFabricación de Cremas en Industria Farmacéutica
Fabricación de Cremas en Industria FarmacéuticaGarcaGutirrezBryan
 
4 Tipos de Empresa Sociedad colectiva.pptx
4 Tipos de Empresa Sociedad colectiva.pptx4 Tipos de Empresa Sociedad colectiva.pptx
4 Tipos de Empresa Sociedad colectiva.pptxRicardo113759
 
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptxi7ingenieria
 
Empresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercadoEmpresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercadoPsicoterapia Holística
 
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxCARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxWILIANREATEGUI
 
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...BaleriaMaldonado1
 
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesLas sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesPatrickSteve4
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfAJYSCORP
 

Último (20)

2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
2024 - 04 PPT Directiva para la formalizacion, sustento y registro del gasto ...
 
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptxSostenibilidad y continuidad huamcoli robin-cristian.pptx
Sostenibilidad y continuidad huamcoli robin-cristian.pptx
 
liderazgo guia.pdf.............................
liderazgo guia.pdf.............................liderazgo guia.pdf.............................
liderazgo guia.pdf.............................
 
implemenatcion de un data mart en logistica
implemenatcion de un data mart en logisticaimplemenatcion de un data mart en logistica
implemenatcion de un data mart en logistica
 
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
3ro - Semana 1 (EDA 2) 2023 (3).ppt. edx
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industral
 
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBREDISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
DISEÑO DE ESTRATEGIAS EN MOMENTOS DE INCERTIDUMBRE
 
2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx2 Tipo Sociedad comandita por acciones.pptx
2 Tipo Sociedad comandita por acciones.pptx
 
Analisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la RentaAnalisis del art. 37 de la Ley del Impuesto a la Renta
Analisis del art. 37 de la Ley del Impuesto a la Renta
 
Distribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestreDistribuciones de frecuencia cuarto semestre
Distribuciones de frecuencia cuarto semestre
 
HIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptx
HIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptxHIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptx
HIGIENE_POSTURAL-_MANEJO_DE_CARGA1compr.pptx
 
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
Caja nacional de salud 0&!(&:(_5+:;?)8-!!(
 
Fabricación de Cremas en Industria Farmacéutica
Fabricación de Cremas en Industria FarmacéuticaFabricación de Cremas en Industria Farmacéutica
Fabricación de Cremas en Industria Farmacéutica
 
4 Tipos de Empresa Sociedad colectiva.pptx
4 Tipos de Empresa Sociedad colectiva.pptx4 Tipos de Empresa Sociedad colectiva.pptx
4 Tipos de Empresa Sociedad colectiva.pptx
 
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
260813887-diagrama-de-flujo-de-proceso-de-esparrago-fresco-verde.pptx
 
Empresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercadoEmpresa Sazonadores Lopesa estudio de mercado
Empresa Sazonadores Lopesa estudio de mercado
 
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocxCARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
CARPETA PEDAGOGICA 2024 ARITA.sadasdasddocx
 
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
____ABC de las constelaciones con enfoque centrado en soluciones - Gabriel de...
 
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedadesLas sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
Las sociedades anónimas en el Perú , de acuerdo a la Ley general de sociedades
 
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdfComparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
Comparativo DS 024-2016-EM vs DS 023-2017-EM - 21.08.17 (1).pdf
 

Funcionamiento De Los Filtros

  • 1. FUNCIONAMIENTO DE LOS FILTROS DINA LUCIA ALMANZARITA LUCIA MUÑOZCARLOS ANDRÉS MARTÍNEZ
  • 2. FUNCIONAMIENTO DE LOS FILTROS Al aplicar un filtro a un objeto de visualización, se crea en caché una copia del objeto original como un mapa de bits transparente. Una vez que un filtro se ha aplicado a un objeto de visualización, Adobe Flash Player almacena en caché el objeto como un mapa de bits mientras éste mantiene una lista de filtros válida.
  • 3. Este mapa de bits de origen se usa luego como imagen original para todas las aplicaciones posteriores de efectos de filtros. Normalmente, un objeto de visualización contiene dos mapas de bits: uno con el objeto de visualización de origen sin filtrar (original) y otro con la imagen final una vez filtrada. La imagen final se usa en la representación. Mientras el objeto de visualización no cambie, la imagen final no necesita actualización.
  • 4. FILTROS Y CACHÉ DE MAPAS DE BITS Para aplicar un filtro a un objeto de visualización, debe estar activada la caché de mapa de bits para ese objeto. Al aplicar un filtro a un objeto de visualización cuya propiedad cacheAsBitmap tiene el valor false, Flash Player automáticamente establece el valor de la propiedad cacheAsBitmap del objeto como true. Si más adelante se quitan todos los filtros del objeto de visualización, Flash Player restablecer el valor que la propiedad cacheAsBitmap tenía con anterioridad.
  • 5. CAMBIO DE FILTROS EN TIEMPO DE EJECUCIÓN Si un objeto de visualización tiene uno o más filtros aplicados, no es posible añadir más filtros a la matriz de la propiedad filters. En vez de eso, para añadir filtros o cambiar el conjunto de filtros aplicados, es necesario crear una copia de toda la matriz filters y realizar las modificaciones en esta matriz provisional. A continuación, esa matriz se vuelve a asignar a la propiedad filters del objeto de visualización para que los filtros se apliquen al objeto. Este proceso se muestra en el siguiente código. Inicialmente se aplica un filtro de iluminado al objeto de visualización llamado myDisplayObject; luego, cuando se hace clic en el objeto, se llama a la función addFilters(). Mediante esta función se aplican dos filtros más a myDisplayObject:
  • 6. import flash.events.MouseEvent; import flash.filters.*; myDisplayObject.filters = [new GlowFilter()]; function addFilters(event:MouseEvent):void { // Hacer una copia de la matriz de filtros. var filtersCopy:Array = myDisplayObject.filters; // Realizar los cambios deseados en los filtros (en este caso, // añadiendo filtros). filtersCopy.push(new BlurFilter()); filtersCopy.push(new DropShadowFilter()); // Aplicar los cambios reasignando la matriz a la propiedad filters. myDisplayObject.filters = filtersCopy; } myDisplayObject.addEventListener(MouseEvent.CLICK,addFilters);
  • 7. FILTROS Y TRANSFORMACIONES DE OBJETOS Ninguna región filtrada (una sombra, por ejemplo) que se encuentre fuera del recuadro de delimitación rectangular de un objeto de visualización se considera parte de la superficie a efectos de la detección de colisiones (determinar si una instancia se solapa o corta con otra instancia). Dado que los métodos de detección de colisiones de la clase DisplayObject se basan en vectores, no es posible llevar a cabo esta operación sobre un resultado que es un mapa de bits. Por ejemplo, si se aplica un filtro de bisel a una instancia de botón, la detección de colisiones no estará disponible en la parte biselada de la instancia.
  • 8. FILTROS Y OBJETOS DE MAPAS DE BITS Al aplicar un filtro a un objeto BitmapData, la propiedad cacheAsBitmap toma automáticamente el valor true. De este modo, el filtro se aplica en realidad a la copia del objeto en lugar de al original. Esta copia se coloca a continuación en la visualización principal (sobre el objeto original) tan cerca como sea posible del píxel más cercano. Si los límites del mapa de bits original cambian, la copia del mapa de bits con el filtro se vuelve a crear de nuevo en lugar de estirarla o distorsionarla. Si se quitan todos los filtros de un objeto de visualización, se restablece el valor que la propiedad cacheAsBitmap tenía antes de aplicarse el filtro
  • 9. FILTRO DE BISEL La clase BevelFilter permite añadir un borde biselado tridimensional al objeto filtrado. Este filtro hace que las esquinas o bordes duros del objeto adquieran una apariencia cincelada o biselada. Las propiedades de la clase BevelFilter permiten personalizar la apariencia del bisel. Se pueden definir los colores de iluminación y sombra, el desenfoque de los bordes del bisel, los ángulos de biselado y la colocación de los bordes del bisel; incluso se puede crear un efecto extractor.
  • 10. EN EL SIGUIENTE EJEMPLO SE CARGA UNA IMAGEN EXTERNA Y SE LE APLICA UN FILTRO DE BISEL. import flash.display.*; import flash.filters.BevelFilter; import flash.filters.BitmapFilterQuality; import flash.filters.BitmapFilterType; import flash.net.URLRequest; // Cargar una imagen en el escenario. var imageLoader:Loader = new Loader(); var url:String = "http://www.helpexamples.com/flash/images/image3.jpg"; var urlReq:URLRequest = new URLRequest(url); imageLoader.load(urlReq); addChild(imageLoader); // Crear el filtro de bisel y definir sus propiedades. var bevel:BevelFilter = new BevelFilter(); bevel.distance = 5; bevel.angle = 45; bevel.highlightColor = 0xFFFF00; bevel.highlightAlpha = 0.8; bevel.shadowColor = 0x666666; bevel.shadowAlpha = 0.8; bevel.blurX = 5; bevel.blurY = 5; bevel.strength = 5; bevel.quality = BitmapFilterQuality.HIGH; bevel.type = BitmapFilterType.INNER; bevel.knockout = false; // Aplicar el filtro a la imagen. imageLoader.filters = [bevel];
  • 11. FILTRO DE DESENFOQUE La clase BlurFilter difumina, o desenfoca, un objeto de visualización y su contenido. Los efectos de desenfoque resultan útiles para dar la impresión de que un objeto no está bien enfocado o para simular un movimiento rápido, como en el desenfoque por movimiento. Si se define la propiedad quality del filtro de desenfoque en un nivel bajo, se puede simular un efecto de lente ligeramente desenfocada. Si la propiedad quality se establece en un nivel alto, da lugar a un efecto de desenfoque suave similar a un desenfoque gaussiano.
  • 12. EN EL SIGUIENTE EJEMPLO SE CREA UN OBJETO CIRCULAR USANDO EL MÉTODO DRAWCIRCLE() DE LA CLASE GRAPHICS Y SE LE APLICA UN EFECTO DE DESENFOQUE: import flash.display.Sprite; import flash.filters.BitmapFilterQuality; import flash.filters.BlurFilter; // Dibujar un círculo. var redDotCutout:Sprite = new Sprite(); redDotCutout.graphics.lineStyle(); redDotCutout.graphics.beginFill(0xFF0000); redDotCutout.graphics.drawCircle(145, 90, 25); redDotCutout.graphics.endFill(); // Añadir el círculo a la lista de visualización. addChild(redDotCutout); // Aplicar el filtro de desenfoque al rectángulo. var blur:BlurFilter = new BlurFilter(); blur.blurX = 10; blur.blurY = 10; blur.quality = BitmapFilterQuality.MEDIUM; redDotCutout.filters = [blur];
  • 13. FILTRO DE SOMBRA Las sombras dan la impresión de que existe una fuente de luz independiente situada sobre el objeto de destino. La posición e intensidad de esta fuente de luz se puede modificar para originar toda una gama de distintos efectos de sombra. El filtro de sombra usa un algoritmo similar al del filtro de desenfoque. La principal diferencia es que el filtro de sombra tiene unas pocas propiedades más que se pueden modificar para simular los distintos atributos de la fuente de luz (como alfa, color, desplazamiento y brillo). El filtro de sombra también permite aplicar opciones de transformación personalizadas sobre el estilo de la sombra, incluidas la sombra interior o exterior y el modo extractor (también conocido como silueta).
  • 14. EL SIGUIENTE CÓDIGO CREA UNA UN OBJETO SPRITE CUADRADO Y LE APLICA UN FILTRO DE SOMBRA: import flash.display.Sprite; import flash.filters.DropShadowFilter; // Dibujar un cuadrado. var boxShadow:Sprite = new Sprite(); boxShadow.graphics.lineStyle(1); boxShadow.graphics.beginFill(0xFF3300); boxShadow.graphics.drawRect(0, 0, 100, 100); boxShadow.graphics.endFill(); addChild(boxShadow); // Aplicar el filtro de sombra al cuadrado. var shadow:DropShadowFilter = new DropShadowFilter(); shadow.distance = 10; shadow.angle = 25; // También se pueden establecer otras propiedades, como el color // de la sombra, el alfa, el desenfoque, la fuerza, la calidad // y las opciones de los efectos de sombra interior y extractor. boxShadow.filters = [shadow];