El brillo es un atributo de la percepción visual en el que una fuente parece estar irradiando o reflejando la luz.
En este tutorial aprenderemos cómo modificar el brillo de un objeto de visualización utilizando ActionScript 3.
Echemos un vistazo al resultado final en el que trabajaremos:
Usando la clase ColorTransform y un componente Slider aumentaremos o disminuiremos el brillo de un DisplayObject.
Abra Flash y cree un nuevo archivo Flash (ActionScript 3).
Establezca el tamaño del escenario en 500x350px y establezca la velocidad de cuadros a 24 fps.
Cualquier DisplayObject se puede utilizar con esta clase; para este ejemplo elegí una imagen de Flickr:
Coloque su imagen en el centro del escenario, conviértala a MovieClip y asígnele un nombre de instancia de imagen.
Crearemos un panel con un componente Slider y un campo de texto dinámico como objetos interactivos.
Seleccione la Herramienta primitiva Rectángulo (R) y dibuje un rectángulo de 250x70px, establezca el radio de la esquina en 7 y cambie su alfa a 60.
Conviértalo a MovieClip y agregue el siguiente filtro:
El panel debería verse así:
Haga doble clic en MovieClip para ingresar al modo de edición y crear un campo de texto dinámico; establece su nombre de instancia en bValue (para "valor de brillo") y centrarlo. Dale una entrada inicial de 0. También puede agregar un título al panel y algunos íconos como guía..
Abra el panel Componentes (Cmd / Ctrl + F7) y arrastre un componente Slider a su panel Brillo; Centrarlo y nombrarlo deslizador.
Con el componente del control deslizante seleccionado, presione Mayús + F7 para abrir el panel Inspector de componentes y editar las opciones como se muestra en la imagen:
Cree un nuevo documento ActionScript y guárdelo como Main.as.
Vamos a utilizar una clase de documento para este proyecto. Si no está seguro de cómo usar una clase de documento, lea esta introducción rápida.
paquete
La palabra clave del paquete le permite organizar su código en grupos que pueden ser importados por otros scripts, se recomienda nombrarlos comenzando con una letra minúscula y usar intercaps para las siguientes palabras, por ejemplo: mis clases.
Si no desea agrupar sus archivos en un paquete o tiene solo una clase, puede usarlos directamente desde su carpeta de origen.
Se necesitan algunas clases para que esto funcione. Para obtener una descripción más detallada de cada clase, consulte la Ayuda de Flash (F1).
importar flash.display.Sprite; import fl.events.SliderEvent; importar flash.geom.ColorTransform;
los se extiende palabra clave define una clase que es una subclase de otra clase. La subclase hereda todos los métodos, propiedades y funciones, de esa manera podemos usarlos en nuestra clase.
Clase pública Principal extiende Sprite
Solo se necesita una variable en este ejemplo: una instancia de ColorTransform. Esto se utilizará para cambiar los valores RGB del objeto de visualización de destino.
var colorTransform: ColorTransform = new ColorTransform ();
Esta función se ejecuta cuando se carga la clase..
Se agrega un detector SliderEvent al componente Slider para ejecutar una función cuando el usuario cambia el valor del control deslizante..
función pública Main (): void panel.slider.addEventListener (SliderEvent.CHANGE, updateBrightness);
Esta función se ejecuta cuando cambia el valor del control deslizante. Esta es la parte ColorTransform. Las compensaciones de rojo, verde y azul de la matriz de transformación de color se configuran para coincidir con el valor del control deslizante.
función privada updateBrightness (e: SliderEvent): void / * Establezca las compensaciones RGB en el valor del control deslizante * / colorTransform.redOffset = e.value; colorTransform.greenOffset = e.value; colorTransform.blueOffset = e.value;
¿Quieres saber qué estamos haciendo aquí? Echa un vistazo a este artículo que explica las transformaciones de color..
Esta línea aplica los cambios a la imagen en el escenario..
image.transform.colorTransform = colorTransform;
El texto en el panel de brillo también se actualiza..
panel.bValue.text = e.value;
Vuelva al archivo .fla y, en el Panel de propiedades, configure el campo Clase para Principal para vincularlo a la clase de documento.
Ahora puede implementar fácilmente una forma de modificar el brillo de una imagen u otro objeto de visualización utilizando ActionScript 3.
Gracias por leer!