Packagelopsae.lif.particulas.rastrosLineares
Classpublic class RastroLinear
ImplementsCondenado

Provee de un creador y administrador para un sistema de partículas lineares. Cada instancia funciona mediante llamadas a las funciones crearRastro y manejarRastro donde con cada llamada se crea un nuevo conjunto de puntos para utilizar y se actualizan las propiedades de todos los rastros creados hasta el momento por la instancia.

Entre las diferentes propiedades que es posible controlar en los rastros creados está el color, alpha, y grosor de la línea generada (mediante un conjunto de objetos FuncionAlgebraica); es posible controlar la trayectoria y movimiento de las posiciones que forman los rastros (mediante el clonado de un objeto VectorMovimiento); y es posible seleccionar si el trazado de los rastros ser realizará con líneas rectas o mediante curvas de Bézier.

See also

lopsae.lif.matematicas.algebra.FuncionAlgebraica
lopsae.lif.vectoresMovimiento.VectorMovimiento


Public Methods
 MethodDefined by
  
RastroLinear(posicionBase:Posicionado, spriteRaiz:Sprite, duracion:int, dibujadoEnSpriteUnico:Boolean)
Construye una instancia que obtendrá la posición para el siguiente rastro (o conjunto de rastros) utilizando el Posicionado dado.
RastroLinear
  
asignarDuracion(duracion:int):void
Asigna la duración que tendrá cada rastro creado por la instancia.
RastroLinear
  
Asigna el objeto con el cual se mutará la posición a capturar, antes de cada captura.
RastroLinear
  
asignarNumeroDeRastros(numero:int):void
Asigna el número de rastros que se crearán en cada llamada a la función crearRastros.
RastroLinear
  
asignarPosicionBase(posicionBase:Posicionado):void
Asigna el objeto del cual se obtendrá la posición o conjunto de posiciones con los cuales son dibujados los rastros.
RastroLinear
  
asignarPropiedadesFijas(rgb:uint, alpha:Number, grosor:Number):void
Asigna los valores para las propiedades fijas que tendrán los rastros creados por la instancia.
RastroLinear
  
Asigna los objetos que proveerán los valores para las propiedades variables de los rastros creados por la instancia.
RastroLinear
  
Asigna el objeto que será utilizado para generar objetos VectorMovimiento para controlar la posición en la que se dibujan los rastros.
RastroLinear
  
borrar():void
Libera toda referencia interna que contenga la instancia.
RastroLinear
  
crearRastros():void
Captura la posición para el siguiente rastro o conjunto de rastros y lo agrega a la lista de dibujado.
RastroLinear
  
ejecutar():void
Esta función solamente llama a la función manejarRastros.
RastroLinear
  
liberar():void
Retira a la instancia de cualquier Verdugo en el que se encuentre contenido.
RastroLinear
  
Crea, actualiza las características, y dibuja los rastros correspondientes a la instancia.
RastroLinear
  
sentenciar(elemento:ElementoPublico):void
Función para asignar el ElementoPublico que representa la ejecución de la instancia.
RastroLinear
  
usaBezier():Boolean
Regresa un valor que indica si el trazado de los rastros de la instancia se realiza utilizando líneas rectas o curvas de Bézier.
RastroLinear
  
Regresa un valor que indica si la instancia será borrada automáticamente en el momento en el que ya no contenga ningún rastro que dibujar.
RastroLinear
  
Regresa un valor que indica si el objeto spriteRaiz será borrado automáticamente al borrar la instancia.
RastroLinear
  
Regresa un valor que indica si la función crearRastros será llamada automáticamente en cada llamada a la función manejarRastros.
RastroLinear
  
Regresa un valor que indica si los rastros dibujados por la instancia son dibujados directamente en el spriteRaiz, o dentro de Sprites independientes para cada rastro.
RastroLinear
  
Regresa un valor que indica si antes de capturar cada posición a utilizar para el dibujado de rastros, será llamada la función mutar de el objeto Mutable asignado a la instancia.
RastroLinear
  
Regresa un valor que indica si los rastros dibujados por la instancia tiene propiedades que varían con el tiempo.
RastroLinear
  
usarBezier(usar:Boolean):void
Habilita o deshabilita si el trazado de los rastros de la instancia se realiza utilizando líneas rectas o curvas de Bézier.
RastroLinear
  
usarBorradoAutomatico(usar:Boolean):void
Habilita o deshabilita si la instancia será borrada automáticamente en el momento en el que ya no contenga ningún rastro que dibujar.
RastroLinear
  
usarBorradoDeSpriteRaiz(usar:Boolean):void
Habilita o deshabilita si el objeto spriteRaiz será borrado automáticamente al borrar la instancia.
RastroLinear
  
usarCreacionInternaDeRastros(usar:Boolean):void
Habilita o deshabilita si la función crearRastros será llamada automáticamente en cada llamada a la función manejarRastros.
RastroLinear
  
usarDibujadoEnSpriteUnico(usar:Boolean):void
Habilita o deshabilita si los rastros dibujados por la instancia son dibujados directamente en el spriteRaiz, o dentro de Sprites independientes para cada rastro.
RastroLinear
  
usarPosicionMutable(usar:Boolean):void
Habilita o deshabilita si antes de capturar cada posición a utilizar para el dibujado de rastros, será llamada la función mutar de el objeto Mutable asignado a la instancia.
RastroLinear
  
usarPropiedadesVariables(usar:Boolean):void
Habilita o deshabilita si los rastros dibujados por la instancia tiene propiedades que varían con el tiempo.
RastroLinear
  
usarVectorMovimiento(usar:Boolean):void
Habilita o deshabilita si la posición de los rastros será modificada utilizando clones de un objeto VectorMovimiento.
RastroLinear
  
Regresa un valor que indica si la posición de los rastros será modificada utilizando clones de un objeto VectorMovimiento.
RastroLinear
  
Regresa la duración que tiene cada rastro creado por la instancia.
RastroLinear
  
Regresa el objeto con el cual se muta la posición a capturar, antes de cada captura.
RastroLinear
  
Regresa el número de rastros que se crean en cada llamada a la función crearRastros.
RastroLinear
  
Regresa el objeto del cual se obtiene la posición o conjunto de posiciones con los cuales son dibujados los rastros.
RastroLinear
  
verSpriteRaiz():Sprite
Regresa el spriteRaiz utilizado por la instancia.
RastroLinear
  
Regresa el objeto que es utilizado para generar objetos VectorMovimiento para controlar la posición en la que se dibujan los rastros.
RastroLinear
Constructor detail
RastroLinear()constructor
public function RastroLinear(posicionBase:Posicionado, spriteRaiz:Sprite, duracion:int, dibujadoEnSpriteUnico:Boolean)

Construye una instancia que obtendrá la posición para el siguiente rastro (o conjunto de rastros) utilizando el Posicionado dado. El dibujado de todos los rastros se realizará dentro del objeto spriteRaiz, ya sea dibujando directamente en dicho Sprite, o creando un Sprite independiente para cada trazo del rastro. La duración de cada rastro está limitada al tiempo especificado en el parámetro duracion.

Inicialmente la instancia creará rastros utilizando líneas rectas, la instancia no se borrará automáticamente al vaciarse de rastros ni el objeto spriteRaiz será borrado al borrar la instancia, los rastros creadas tendrán propiedades fijas, solo se creará un rastro en cada ejecución, no se utilizará un objeto VectorMovimiento para controlar la posición de los rastros creados, y la función manejarRastros capturará automáticamente un nuevo punto o conjunto de puntos en cada llamada.

Parameters
posicionBase:Posicionado — objeto del cual se obtendrá la posición o posiciones a donde se continuará el dibujado de rastros.
 
spriteRaiz:Sprite — objeto dentro del cual se dibujarán los rastros.
 
duracion:int — tiempo (en llamadas a la función manejarRastros) que existirá cada rastro creado.
 
dibujadoEnSpriteUnico:Booleantrue para indicar que todos los rastros serán dibujados directamente a spriteRaiz, o false si un Sprite independiente será creado para cada rastro y luego agregado dentro de spriteRaiz.
Method detail
asignarDuracion()method
public function asignarDuracion(duracion:int):void

Asigna la duración que tendrá cada rastro creado por la instancia.

Parameters
duracion:int — la duración que tendrá cada rastro creado por la instancia.
asignarMutadorDePosicion()method 
public function asignarMutadorDePosicion(mutador:Mutable):void

Asigna el objeto con el cual se mutará la posición a capturar, antes de cada captura.

Parameters
mutador:Mutable — el objeto con el cual se mutará la posición a capturar, antes de cada captura.
asignarNumeroDeRastros()method 
public function asignarNumeroDeRastros(numero:int):void

Asigna el número de rastros que se crearán en cada llamada a la función crearRastros.

Usualmente cuando la instancia creará más de un rastro en cada ejecución es necesario asignar un objeto Mutable y habilitar su uso mediante las funciones asignarMutadorDePosicion y usarPosicionMutable. Este objeto será llamado antes de cada captura de la posición la cual se realiza en la creación de cada rastro. De esta forma es posible modificar el estado de la posición que será capturada logrando que para cada rastro se tengan valores de posición distintos.

Parameters
numero:int — el número de rastros que se crearán en cada llamada a la función crearRastros.
asignarPosicionBase()method 
public function asignarPosicionBase(posicionBase:Posicionado):void

Asigna el objeto del cual se obtendrá la posición o conjunto de posiciones con los cuales son dibujados los rastros.

Parameters
posicionBase:Posicionado — el objeto del cual se obtendrá la posición o conjunto de posiciones con los cuales son dibujados los rastros.
asignarPropiedadesFijas()method 
public function asignarPropiedadesFijas(rgb:uint, alpha:Number, grosor:Number):void

Asigna los valores para las propiedades fijas que tendrán los rastros creados por la instancia.

Parameters
rgb:uint — el valor del color a utilizar, el cual es un entero sin signo en el formato 0xffffff.
 
alpha:Number — el valor de alpha a utilizar. Este valor debe de encontrarse dentro del rango [0, 1].
 
grosor:Number — el grosor de los rastros en pixeles. Este valor debe de encontrase dentro del rango [0, 255].
asignarPropiedadesVariables()method 
public function asignarPropiedadesVariables(funcionRgb:FuncionAlgebraica, funcionAlpha:FuncionAlgebraica, funcionGrosor:FuncionAlgebraica):void

Asigna los objetos que proveerán los valores para las propiedades variables de los rastros creados por la instancia.

El valor dado a las FuncionesAlgebraicas corresponde al de la llamada en la que se encuentra el rastro, el cual comienza en cero y avanza en cada ejecución hasta la duración máxima del rastro.

Parameters
funcionRgb:FuncionAlgebraica — la función algebraica que determinará el color del rastro.
 
funcionAlpha:FuncionAlgebraica — la función algebraica que determinará el alpha del rastro.
 
funcionGrosor:FuncionAlgebraica — la función algebraica que determinará el grosor del rastro.
asignarVectorMovimiento()method 
public function asignarVectorMovimiento(vector:VectorMovimiento):void

Asigna el objeto que será utilizado para generar objetos VectorMovimiento para controlar la posición en la que se dibujan los rastros.

Esta funcionalidad debe de activarse utilizando la función usarVectorMovimiento. Para cada posición capturada se genera un nuevo objeto VectorMovimiento el cual se obtiene clonando el objeto que contiene la instancia, de forma que este objeto nunca es modificado o utilizado directamente.

Parameters
vector:VectorMovimiento — el objeto que será utilizado para generar objetos VectorMovimiento para controlar la posición en la que se dibujan los rastros.
borrar()method 
public function borrar():void

Libera toda referencia interna que contenga la instancia.

Después de llamar esta función la instancia quedará inusable y cualquier uso de esta podría provocar errores o comportamiento impredecible.

crearRastros()method 
public function crearRastros():void

Captura la posición para el siguiente rastro o conjunto de rastros y lo agrega a la lista de dibujado.

Esta función no dibuja los rastros. Generalmente esta función es llamada automáticamente dentro de la función manejarRastros, a menos que dicho funcionamiento se deshabilite utilizando la función usarCreacionInternaDeRastros. Esta función es pública debido a que ocasionalmente es necesario que la captura de la posición y creación de los rastros ocurra en un momento distinto al dibujado de los mismos.

ejecutar()method 
public function ejecutar():void

Esta función solamente llama a la función manejarRastros.

liberar()method 
public function liberar():void

Retira a la instancia de cualquier Verdugo en el que se encuentre contenido.

manejarRastros()method 
public function manejarRastros():void

Crea, actualiza las características, y dibuja los rastros correspondientes a la instancia.

Es posible deshabilitar la captura de nuevas posiciones para el dibujado de rastros mediante la función usarCreacionInternaDeRastros. Si esta funcionalidad se encuentra deshabilitada, esta función se limitará a actualizar las características y redibujar los rastros correspondientes a la instancia.

sentenciar()method 
public function sentenciar(elemento:ElementoPublico):void

Función para asignar el ElementoPublico que representa la ejecución de la instancia. La instancia de ElementoPublico dada debe de ser retirada de la colección que lo contienen al llamar cualquiera de las funciones borrar o liberar.

Debido a que la instancia sólo puede existir en un solo Verdugo en un momento determinado, si esta función es llamada más de una vez con diferentes ElementosPublicos de parámetros, las instancias anteriores de ElementosPublicos deberán de ser retiradas de sus correspondientes colecciones antes de ser substituidas.

Si null es dado como parámetro existiendo previamente una instancia de ElementoPublico contenida, la instancia de ElementoPublico contenida será retirada de su colección antes de remover la referencia. Este funcionamiento sería el mismo que la de la función liberar. Al borrar una instancia de Condenado, esta debe de removerse de aquel Verdugo en el que esté contenido.

Parameters
elemento:ElementoPublico — el ElementoPublico que representa la presencia de ejecución de la instancia.
usaBezier()method 
public function usaBezier():Boolean

Regresa un valor que indica si el trazado de los rastros de la instancia se realiza utilizando líneas rectas o curvas de Bézier.

Returns
Booleantrue si se utilizan curvas de Bézier, false si se utilizan líneas rectas.
usaBorradoAutomatico()method 
public function usaBorradoAutomatico():Boolean

Regresa un valor que indica si la instancia será borrada automáticamente en el momento en el que ya no contenga ningún rastro que dibujar.

Returns
Booleantrue si la instancia se borrará automáticamente, false de lo contrario.
usaBorradoDeSpriteRaiz()method 
public function usaBorradoDeSpriteRaiz():Boolean

Regresa un valor que indica si el objeto spriteRaiz será borrado automáticamente al borrar la instancia.

Returns
Booleantrue si spriteRaiz se borrará automáticamente, false de lo contrario.
usaCreacionInternaDeRastros()method 
public function usaCreacionInternaDeRastros():Boolean

Regresa un valor que indica si la función crearRastros será llamada automáticamente en cada llamada a la función manejarRastros.

Returns
Booleantrue si la función es llamada automáticamente, false de lo contrario.
usaDibujadoEnSpriteUnico()method 
public function usaDibujadoEnSpriteUnico():Boolean

Regresa un valor que indica si los rastros dibujados por la instancia son dibujados directamente en el spriteRaiz, o dentro de Sprites independientes para cada rastro.

Returns
Booleantrue si todos los rastros son dibujados directamente dentro de spriteRaiz, false si cada rastro es dibujado en un Sprite independiente.
usaPosicionMutable()method 
public function usaPosicionMutable():Boolean

Regresa un valor que indica si antes de capturar cada posición a utilizar para el dibujado de rastros, será llamada la función mutar de el objeto Mutable asignado a la instancia. Dicho objeto es asignado mediante la función asignarMutadorDePosicion.

Returns
Booleantrue si la función mutar será llamada antes de la captura de cada posición, false de lo contrario.
usaPropiedadesVariables()method 
public function usaPropiedadesVariables():Boolean

Regresa un valor que indica si los rastros dibujados por la instancia tiene propiedades que varían con el tiempo.

Returns
Booleantrue si las propiedades variables son utilizadas, false si las propiedades utilizadas son fijas.
usarBezier()method 
public function usarBezier(usar:Boolean):void

Habilita o deshabilita si el trazado de los rastros de la instancia se realiza utilizando líneas rectas o curvas de Bézier.

Parameters
usar:Booleantrue si se utilizan curvas de Bézier, false si se utilizan líneas rectas.
usarBorradoAutomatico()method 
public function usarBorradoAutomatico(usar:Boolean):void

Habilita o deshabilita si la instancia será borrada automáticamente en el momento en el que ya no contenga ningún rastro que dibujar.

Parameters
usar:Booleantrue si la instancia se borrará automáticamente, false de lo contrario.
usarBorradoDeSpriteRaiz()method 
public function usarBorradoDeSpriteRaiz(usar:Boolean):void

Habilita o deshabilita si el objeto spriteRaiz será borrado automáticamente al borrar la instancia.

Parameters
usar:Booleantrue si spriteRaiz se borrará automáticamente, false de lo contrario.
usarCreacionInternaDeRastros()method 
public function usarCreacionInternaDeRastros(usar:Boolean):void

Habilita o deshabilita si la función crearRastros será llamada automáticamente en cada llamada a la función manejarRastros.

Parameters
usar:Booleantrue si la función será llamada automáticamente, false de lo contrario.
usarDibujadoEnSpriteUnico()method 
public function usarDibujadoEnSpriteUnico(usar:Boolean):void

Habilita o deshabilita si los rastros dibujados por la instancia son dibujados directamente en el spriteRaiz, o dentro de Sprites independientes para cada rastro.

Parameters
usar:Booleantrue si todos los rastros serán dibujados directamente dentro de spriteRaiz, false si cada rastro será dibujado en un Sprite independiente.
usarPosicionMutable()method 
public function usarPosicionMutable(usar:Boolean):void

Habilita o deshabilita si antes de capturar cada posición a utilizar para el dibujado de rastros, será llamada la función mutar de el objeto Mutable asignado a la instancia. Dicho objeto es asignado mediante la función asignarMutadorDePosicion.

Parameters
usar:Booleantrue si la función mutar será llamada antes de la captura de cada posición, false de lo contrario.
usarPropiedadesVariables()method 
public function usarPropiedadesVariables(usar:Boolean):void

Habilita o deshabilita si los rastros dibujados por la instancia tiene propiedades que varían con el tiempo.

Parameters
usar:Booleantrue si las propiedades variables serán utilizadas, false si las propiedades a utilizar serán fijas.
usarVectorMovimiento()method 
public function usarVectorMovimiento(usar:Boolean):void

Habilita o deshabilita si la posición de los rastros será modificada utilizando clones de un objeto VectorMovimiento. Dicho objeto se asigna a la instancia mediante la función asignarVectorMovimiento.

Parameters
usar:Booleantrue si la posición de los rastros utilizará un objeto VectorMovimiento, false si la posición de los rastros será fija.
usaVectorMovimiento()method 
public function usaVectorMovimiento():Boolean

Regresa un valor que indica si la posición de los rastros será modificada utilizando clones de un objeto VectorMovimiento. Dicho objeto se asigna a la instancia mediante la función asignarVectorMovimiento.

Returns
Booleantrue si la posición de los rastros utilizará un objeto VectorMovimiento, false si la posición de los rastros será fija.
verDuracion()method 
public function verDuracion():int

Regresa la duración que tiene cada rastro creado por la instancia.

Returns
int — la duración que tiene cada rastro creado por la instancia.
verMutadorDePosicion()method 
public function verMutadorDePosicion():Mutable

Regresa el objeto con el cual se muta la posición a capturar, antes de cada captura.

Returns
Mutable — el objeto con el cual se muta la posición a capturar, antes de cada captura.
verNumeroDeRastros()method 
public function verNumeroDeRastros():int

Regresa el número de rastros que se crean en cada llamada a la función crearRastros.

Usualmente cuando la instancia creará más de un rastro en cada ejecución es necesario asignar un objeto Mutable y habilitar su uso mediante las funciones asignarMutadorDePosicion y usarPosicionMutable. Este objeto será llamado antes de cada captura de la posición la cual se realiza en la creación de cada rastro. De esta forma es posible modificar el estado de la posición que será capturada logrando que para cada rastro tengan valores de posición distintos.

Returns
int — el número de rastros que se crean en cada llamada a la función crearRastros.
verPosicionBase()method 
public function verPosicionBase():Posicionado

Regresa el objeto del cual se obtiene la posición o conjunto de posiciones con los cuales son dibujados los rastros.

Returns
Posicionado — el objeto del cual se obtiene la posición o conjunto de posiciones con los cuales son dibujados los rastros.
verSpriteRaiz()method 
public function verSpriteRaiz():Sprite

Regresa el spriteRaiz utilizado por la instancia.

Returns
Sprite — el spriteRaiz utilizado por la instancia.
verVectorMovimiento()method 
public function verVectorMovimiento():VectorMovimiento

Regresa el objeto que es utilizado para generar objetos VectorMovimiento para controlar la posición en la que se dibujan los rastros.

Esta funcionalidad debe de activarse utilizando la función usarVectorMovimiento. Para cada posición capturada se genera un nuevo objeto VectorMovimiento el cual se obtiene clonando el objeto que contiene la instancia, de forma que este objeto nunca es modificado o utilizado directamente.

Returns
VectorMovimiento — el objeto que es utilizado para generar objetos VectorMovimiento para controlar la posición en la que se dibujan los rastros.