Class: cVector
cObjeto ----+
|
cObjetoPersistente ----+
|
cVector
Description:
La clase cVector es la implementación de un vector físico. Esta clase es el esqueleto de
la aplicación ya que todas las velocidades y posiciones son del tipo cVector.
Todos los calculos de movimientos, distancias, etc. se manejan con los metodos de esta clase
Unit:
Vectores
(Vectores.pas)
Constructors:
-
constructor create( v: cVector ); overload;
-
Constructor que copia los atributos de un Vector existente
-
constructor create( x: tLongitud = 0; y: tLongitud = 0; z: tLongitud = 0 ); overload;
-
Constructor
Methods:
-
function mAddModulo( modulo: tLongitud ): cVector;
-
Aumenta (o disminuye si el argumente es negativo) el modulo del vector
-
function mAddX( x: tLongitud ): cVector;
-
Agrega un valor a la componente X
-
function mAddY( y: tLongitud ): cVector;
-
Agrega un valor a la componente Y
-
function mAddZ( z: tLongitud ): cVector;
-
Agrega un valor a la componente Z
-
procedure mDesSerializar( str: string ); override;
-
Recrea el objeto a partir de una cadena de texto con el objeto
serializado.
-
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 mGetDistancia( vec: cVector ): tLongitud;
-
Obtiene la distancia al a otro vector
-
function mGetModulo: tLongitud;
-
Obtiene el modulo del vector
-
function mGetX: tLongitud;
-
Obtiene la componente X
-
function mGetY: tLongitud;
-
Obtiene la componente Y
-
function mGetZ: tLongitud;
-
Obtiene la componente Z
-
function mHacerVersor: cVector;
-
Convierte el vector en un versor (norma 1)
-
function mModificarCon( vel: cVector; dT: tTiempo ): cVector;
-
Modifica el vector con basandose en otro vector (pensado como velocidad) y un
intervalo de tiempo siguiendo la formula física X' = X + V * dt
(este metodo esta pensado basicamente para calcular los movimientos)
-
function mMultiplicar( vec: cVector ): cVector; overload;
-
Se multiplica vectorialmente a si mismo por el vector vec
-
function mMultiplicar( esc: tLongitud ): cVector; overload;
-
Se multiplica por un escalar
-
function mMultiplicarEsc( vec: cVector ): tLongitud;
-
Obtiene el producto escalar entre si mismo y el vector vec
-
function mRestar( vec: cVector ): cVector;
-
Resta a si mismo el vector vec
-
function mSerializar: string; override;
-
Devuelve una cadena de texto con el objeto serializado.
-
function mSet( x, y, z: tLongitud ): cVector; overload;
-
Establece los valores del vector x, y, z
-
function mSet( v: cVector ): cVector; overload;
-
Modifica las componentes del vector basandose en otro
-
function mSetModulo( modulo: tLongitud ): cVector;
-
Setea el modulo del vector a un valor determinado
-
function mSetX( x: tLongitud ): cVector;
-
Setea la componente X
-
function mSetY( y: tLongitud ): cVector;
-
Setea la componente Y
-
function mSetZ( z: tLongitud ): cVector;
-
Setea la componente Z
-
function mSumar( vec: cVector ): cVector;
-
Suma a si mismo el vector vec
constructor create( v: cVector ); overload;
- Constructor que copia los atributos de un Vector existente
constructor create( x: tLongitud = 0; y: tLongitud = 0; z: tLongitud = 0 ); overload;
- Crea un nuevo vector basandose en los atributos dados como parámetro.
- Parameters
-
x
: Componente en el eje X -
y
: Componente en el eje Y -
z
: Componente en el eje Z
function mAddModulo( modulo: tLongitud ): cVector;
- Setea el modulo del vector a un valor determinado (sólo tiene sentido si el modulo actual es distinto de cero)
- Parameters
-
modulo
: Modulo a adherir al verctor
function mAddX( x: tLongitud ): cVector;
- Agrega un valor a la componente X
- Parameters
-
x
: Valor a sumarle a la componente X
function mAddY( y: tLongitud ): cVector;
- Agrega un valor a la componente Y
- Parameters
-
y
: Valor a sumarle a la componente Y
function mAddZ( z: tLongitud ): cVector;
- Agrega un valor a la componente Z
- Parameters
-
z
: Valor a sumarle a la componente Z
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 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 mGetDistancia( vec: cVector ): tLongitud;
- Obtiene la distancia al a otro vector (en realidad se tratan como puntos)
@returns Distancia al otro vector
- Parameters
-
vec
: Punto al cual se calcula la distancia
function mGetModulo: tLongitud;
- Returns
- Modulo (o norma) del vector
function mGetX: tLongitud;
- Returns
- Componente X del vector
function mGetY: tLongitud;
- Returns
- Componente Y del vector
function mGetZ: tLongitud;
- Returns
- Componente Z del vector
function mHacerVersor: cVector;
- Convierte el vector en un versor (sólo tiene sentido si el modulo actual es distinto de cero)
function mModificarCon( vel: cVector; dT: tTiempo ): cVector;
- Modifica el vector con basandose en otro vector (pensado como velocidad) y un
intervalo de tiempo siguiendo la formula física X' = X + V * dt
(este metodo esta pensado basicamente para calcular los movimientos)
- Parameters
-
vel
: Vector velocidad -
dT
: Intervalo de tiempo
function mMultiplicar( vec: cVector ): cVector; overload;
- Se multiplica por un escalar
- Parameters
-
esc
: Escalar por el cual se multiplica
function mMultiplicar( esc: tLongitud ): cVector; overload;
- Se multiplica por un escalar
function mMultiplicarEsc( vec: cVector ): tLongitud;
- Obtiene el producto escalar entre si mismo y el vector vec
@return Producto escalar entre los vectores
- Parameters
-
vec
: Vector por el cual se multiplica escalarmente
function mRestar( vec: cVector ): cVector;
- Resta a si mismo el vector vec
- Parameters
-
vec
: Vector que se resta
function mSerializar: string; override;
- Returns
- Cadena de texto con el objeto serializado.
function mSet( x, y, z: tLongitud ): cVector; overload;
- Establece las componentes del vector
- Parameters
-
x
: Nuevo valor de la componente en el eje X -
y
: Nuevo valor de la componente en el eje Y -
z
: Nuevo valor de la componente en el eje Z
function mSet( v: cVector ): cVector; overload;
- Modifica las componentes del vector basandose en otro
function mSetModulo( modulo: tLongitud ): cVector;
- Setea el modulo del vector a un valor determinado
- Parameters
-
modulo
: Valor del nuevo Módulo
function mSetX( x: tLongitud ): cVector;
- Setea la componente X
- Parameters
-
x
: Nuevo valor de la componente en el eje X
function mSetY( y: tLongitud ): cVector;
- Setea la componente Y
- Parameters
-
y
: Nuevo valor de la componente en el eje Y
function mSetZ( z: tLongitud ): cVector;
- Setea la componente Z
- Parameters
-
z
: Nuevo valor de la componente en el eje Z
function mSumar( vec: cVector ): cVector;
- Suma a si mismo el vector vec
- Parameters
-
vec
: Vector a sumarle