Fundamentos de la programación de la visualización

Flash Player 9 y posterior, Adobe AIR 1.0 y posterior

Cada aplicación creada con ActionScript 3.0 tiene una jerarquía de objetos visualizados, conocida como lista de visualización, tal y como se muestra a continuación. La lista de visualización contiene todos los elementos visibles en la aplicación.

<Jerarquía de lista de visualización>

Tal y como muestra la ilustración, los elementos en pantalla se ubican en uno o varios de los siguientes grupos:

  • Objeto Stage

    El objeto Stage es el contenedor base de los objetos de visualización. Cada aplicación tiene un objeto Stage, que contiene todos los objetos de visualización en pantalla. El objeto Stage es el contenedor de nivel superior y se encuentra arriba del todo en la jerarquía de la lista de visualización:

    Cada archivo SWF tiene una clase de ActionScript asociada, conocida como la clase principal del archivo SWF. Cuando se abre un archivo SWF en Flash Player o en Adobe AIR, Flash Player o AIR llama a la función constructora de dicha clase y la instancia que se crea (que es siempre un tipo de objeto de visualización) se añade como elemento secundario del objeto Stage. La clase principal de un archivo SWF siempre amplía la clase Sprite (para obtener más información, consulte Ventajas de la utilización de la lista de visualización).

    Es posible acceder al objeto Stage a través de la propiedad stage de ninguna instancia de DisplayObject. Para obtener más información, consulte Configuración de las propiedades de Stage.

  • Objetos de visualización

    En ActionScript 3.0, todos los elementos que aparecen en la pantalla de una aplicación son tipos de objetos de visualización. El paquete flash.display incluye una clase DisplayObject . Se trata de una clase base ampliada por otras. Estas distintas clases representan tipos diferentes de objetos de visualización, como formas vectoriales, clips de película o campos de texto, entre otros. Para obtener información general de estas clases, consulte Ventajas de la utilización de la lista de visualización.

  • Contenedores de objetos de visualización

    Los contenedores de objetos de visualización son tipos especiales de objetos de visualización que, además de tener su propia representación visual, pueden contener objetos secundarios que también sean objetos de visualización.

    La clase DisplayObjectContainer es una subclase de la clase DisplayObject. Un objeto DisplayObjectContainer puede contener varios objetos de visualización en su lista deelementos secundarios. Por ejemplo, la siguiente ilustración muestra un tipo de objeto DisplayObjectContainer, denominado Sprite, que contiene diversos objetos de visualización:

    <Sprite con objetos de visualización>
    A.
    Un objeto SimpleButton. Este tipo de objeto de visualización tiene distintos estados "Arriba", "Abajo" y "Sobre".

    B.
    Un objeto Bitmap. En este caso, el objeto Bitmap se cargó de un archivo JPEG externo a través de un objeto Loader.

    C.
    Un objeto Shape. El "marco del cuadro" contiene un rectángulo redondeado que se dibuja en ActionScript. Este objeto Shape tiene aplicado un filtro de sombra.

    D.
    Un objeto TextField.

    Cuando se habla de los objetos de visualización, también se hace referencia a los objetos DisplayObjectContainer como contenedores de objetos de visualización o simplemente como contenedores. Como se ha comentado previamente, el objeto Stage es un contenedor de objeto de visualización.

    Aunque todos los objetos de visualización visibles heredan de la clase DisplayObject, el tipo de cada uno de ellos pertenece a una subclase específica de la clase DisplayObject. Por ejemplo, hay una función constructora para la clase Shape o la clase Video, pero no hay ninguna función constructora para la clase DisplayObject.

Conceptos y términos importantes

La siguiente lista de referencia contiene términos importantes que aparecen al programar gráficos de ActionScript:

Alfa
Valor del color que representa el grado de transparencia (en realidad, el grado de opacidad) de un color. Por ejemplo, un color con un valor de canal alfa de 60% solo muestra el 60% de su intensidad total y es un 40% transparente.

Gráfico de mapa de bits
Gráfico que se define en el equipo como una cuadrícula (filas y columnas) de píxeles de colores. Los gráficos de mapa de bits suelen incluir fotos e imágenes similares.

Modo de fusión
Especificación de cómo debe interactuar el contenido de dos imágenes solapadas. Normalmente, una imagen opaca sobre otra imagen simplemente bloquea la imagen de debajo de forma que no esté visible; no obstante, los distintos modos de mezcla hacen que los colores de las imágenes se mezclen de maneras diferentes, por lo que el contenido resultante es una combinación de las dos imágenes.

Lista de visualización
Jerarquía de objetos de visualización que Flash Player y AIR representarán como contenido visible en pantalla. El escenario es la raíz de la lista de visualización y todos los objetos de visualización asociados al escenario o a uno de sus elementos secundarios constituyen la lista de visualización, aunque el objeto no se represente realmente (por ejemplo, si está fuera de los límites del escenario).

Objeto de visualización
Objeto que representa algún tipo de contenido visual en Flash Player o AIR. Solo se pueden incluir objetos de visualización en la lista de visualización y todas las clases de objetos de visualización son subclases de la clase DisplayObject.

Contenedor de objetos de visualización
Tipo especial de objeto de visualización que puede contener objetos de visualización secundarios además de tener (generalmente) su propia representación visual.

Clase principal del archivo SWF
Clase que define el comportamiento del objeto de visualización más exterior en un archivo SWF, que conceptualmente es la clase para el mismo archivo SWF. Por ejemplo, en un archivo SWF creado en edición de Flash, la clase principal es la clase de documento. Tiene una "línea de tiempo principal" que contiene todas las demás líneas de tiempo; la clase principal del archivo SWF es la clase de la que la línea de tiempo principal es una instancia.

Enmascaramiento
Técnica para ocultar determinadas partes de una imagen (o a la inversa, para permitir únicamente la visualización de partes determinadas de una imagen). Las partes ocultas de la imagen pasan a ser transparentes, por lo que se puede ver el contenido de debajo. El término en inglés ("masking") está relacionado con la cinta de pintor ("masking tape") que se aplica para evitar pintar donde no hay que pintar.

Escenario
Contenedor visual que constituye la base o el fondo de todo el contenido visual de un archivo SWF.

Transformación
Ajuste de una característica visual de un gráfico, como girar el objeto, modificar su escala, sesgar o distorsionar su forma, o bien, modificar su color.

Gráfico vectorial
Gráfico definido en el equipo como líneas y formas dibujadas con características específicas (como grosor, longitud, tamaño, ángulo y posición).