Class: cFiltro
cObjeto ----+
|
cObjetoPersistente ----+
|
cFiltro
Description:
Es una clase abstracta que representa un filtro que recibe una lista de objetos y devuelve otra filtrada.
Unit:
Filtro
(Filtro.pas)
Constructors:
-
constructor create( observador: cObjetoVolador; angulo: tAngulo = PI/4; maximo: tLongitud = 5000; minimo: tLongitud = -1 );
-
Constructor
Methods:
-
procedure mDesSerializar( str: string ); override;
-
Recrea el objeto a partir de una cadena de texto con el objeto
serializado.
-
function mFiltrar( l: TList ): TList;
-
Procesa una lista de objetos, devolviendo solo los visibles en una lista ordenada ascendentemente por la distancia
(es decir, el objeto más cercano está primero en la lista).
-
function mGetCosApertura: tAngulo;
-
Obtiene el coseno de la apertura
-
function mGetDebugInfo( debugLevel: tDebugInfo = DI_MINI ): string; override;
-
Método heredado que devuelve un string con el estado del Objeto. Se utiliza para depurar
y la información entregada depende del parámetro tDebugInfo.
-
function mGetObservador: cObjetoVolador;
-
Obtiene un puntero al observador
-
function mGetRadioMaximo: tLongitud;
-
Obtiene el radio máximo
-
function mGetRadioMinimo: tLongitud;
-
Obtiene el radio mínimo
-
function mSerializar: string; override;
-
Devuelve una cadena de texto con el objeto serializado.
-
procedure mSetObservador( ov: cObjetoVolador );
-
Establece el observador con un nuevo puntero
-
function mVisible( ov: cObjetoVolador ): boolean; virtual; abstract;
-
Verifica que un objeto volador pueda ser visto por la cámara
constructor create( observador: cObjetoVolador; angulo: tAngulo = PI/4; maximo: tLongitud = 5000; minimo: tLongitud = -1 );
- Contructor
- Parameters
-
observador
: Objeto Volador en el que estará montado el filtro (obligatorio) -
angulo
: Angulo de apertura (visión) del filtro (default = pi/4) -
maximo
: Distancia máxima en la que se considera visible a un objeto (default = 5000) -
minimo
: Distancia mínima en la que se considera visible a un objeto (default = -1).
Si se especifica un valor negativo o cero, se toma la dimension del objeto volador
procedure mDesSerializar( str: string ); override;
- Recrea el objeto a partir de una cadena de texto con el objeto
serializado.
- Parameters
-
str
: Cadena de texto con el objeto serializado.
function mFiltrar( l: TList ): TList;
- Filtra una lista de objetos, devolviendo solo los visibles.
@return Lista con los objetos visibles.
- Parameters
-
l
: Lista con los objetos a procesar.
function mGetCosApertura: tAngulo;
- Returns
- Coseno de la apertura
function mGetDebugInfo( debugLevel: tDebugInfo = DI_MINI ): string; override;
- Devuelve el estado del objeto basandose en la cantidad de datos requeridos:
Siempre devuelve los valores de las componentes x, y, z y si debugLevel es mayor que DI_NORMAL,
también muestra el módulo.
@return Cadena de texto con el estado del Objeto.
- Parameters
-
debugLevel
: Cantidad de información requerida
function mGetObservador: cObjetoVolador;
- Returns
- Puntero al obervador
function mGetRadioMaximo: tLongitud;
- Returns
- Radio máximo
function mGetRadioMinimo: tLongitud;
- Returns
- Radio mínimo
function mSerializar: string; override;
- Returns
- Cadena de texto con el objeto serializado.
procedure mSetObservador( ov: cObjetoVolador );
- Establece el observador con un nuevo puntero
- Parameters
-
Puntero
: al nuevo obervador
function mVisible( ov: cObjetoVolador ): boolean; virtual; abstract;
- Verifica que un objeto volador pueda ser visto por la cámara