Tapioca Engine 1.0
Motor de videojuegos creado por Bubble Studios
|
Clase que implementa un vector geometrico de tres dimensiones. Más...
#include <Vector3.h>
Métodos públicos | |
Vector3 (const float xyz=0) | |
Constructor de la clase Vector3. Genera un vector que inicializa "x", "y" y "z" al numero dado. Si no se da un numero, este se considera cero. | |
Vector3 (const float x, const float y, const float z=0) | |
Constructor de la clase Vector3. Genera un vector que inicializa "x", "y" y "z" a sus valores correspondientes. Si no se da un valor a "z", se considera cero. | |
Vector3 (const Vector3 &other) | |
Constructor de la clase Vector3. Genera una copia del vector dado. | |
Vector3 (const Vector2 &other, const float z=0) | |
Constructor de la clase Vector3. Genera un vector con "x" e "y" tal como estan en el vector dado. "z" se inicializa segun el numero dado. Si no se da un numero, este se considera cero. | |
float | magnitudeSquared () const |
Devuelve la magnitud al cuadrado del vector. | |
float | magnitude () const |
Devuelve la magnitud del vector. | |
Vector3 | getNormalized () const |
Devuelve este vector, pero normalizado. Si este vector tiene magnitud cero, devuelve un vector de magnitud cero. | |
float | normalize () |
Normaliza este vector y devuelve la magnitud que tenia anteriormente. No ocurre nada si su magnitud es 0. | |
Vector3 | rotateX (const float degrees) const |
Rota el vector sobre el eje x. | |
Vector3 | rotateY (const float degrees) const |
Rota el vector sobre el eje y. | |
Vector3 | rotateZ (const float degrees) const |
Rota el vector sobre el eje z. | |
Vector3 | cross (const Vector3 other) const |
Producto en cruz, devuelve el vector perpendicular.Sistema diestro. | |
float | dot (const Vector3 other) const |
Devuelve el producto escalar entre este vector y otro. | |
Vector3 | operator+ (const Vector3 &other) const |
Devuelve el vector resultante de la suma de este vector con otro. | |
Vector3 | operator- () const |
Devuelve el vector resultante de este vector cambiandole el signo. | |
Vector3 | operator- (const Vector3 &other) const |
Devuelve el vector resultante de la resta de este vector con otro. | |
Vector3 | operator* (const float &other) const |
Devuelve el vector resultante de la multiplicacion de este vector con un escalar. | |
Vector3 | operator* (const Vector3 &other) const |
Devuelve el vector resultante de la multiplicacion de este vector con otro. | |
Vector3 | operator/ (const float &other) const |
Devuelve el vector resultante de la division de este vector con un escalar. | |
Vector3 & | operator+= (const Vector3 &other) |
Devuelve el vector resultante de la suma de este vector con otro. | |
Vector3 & | operator-= (const Vector3 &other) |
Devuelve el vector resultante de la resta de este vector con otro. | |
Vector3 & | operator*= (const float &other) |
Devuelve el vector resultante de la multiplicacion de este vector con un escalar. | |
Vector3 & | operator*= (const Vector3 &other) |
Devuelve el vector resultante de la division de este vector con otro. | |
Vector3 & | operator/= (const float &other) |
Devuelve el vector resultante de la division de este vector con un escalar. | |
bool | operator== (const Vector3 &other) const |
Devuelve si este vector es igual a otro. | |
bool | operator!= (const Vector3 &other) const |
Devuelve si este vector es diferente a otro. | |
Vector3 | lerp (Vector3 const &end, float t) const |
Devuelve la interpolacion entre este vector y otro segun un factor de interpolacion. | |
float | distance (Vector3 const &other) const |
Devuelve la distancia entre este vector y otro. | |
operator Vector2 () const | |
Atributos públicos | |
float | x |
float | y |
float | z |
Clase que implementa un vector geometrico de tres dimensiones.
Tapioca::Vector3::Vector3 | ( | const float | xyz = 0 | ) |
Constructor de la clase Vector3. Genera un vector que inicializa "x", "y" y "z" al numero dado. Si no se da un numero, este se considera cero.
xyz | Valor al que se inicializan "x", "y" y "z" |
Tapioca::Vector3::Vector3 | ( | const float | x, |
const float | y, | ||
const float | z = 0 ) |
Constructor de la clase Vector3. Genera un vector que inicializa "x", "y" y "z" a sus valores correspondientes. Si no se da un valor a "z", se considera cero.
x | Valor al que se inicializa "x" |
y | Valor al que se inicializa "y" |
z | Valor al que se inicializa "z" |
Tapioca::Vector3::Vector3 | ( | const Vector3 & | other | ) |
Constructor de la clase Vector3. Genera una copia del vector dado.
other | Vector que se quiere copiar |
Tapioca::Vector3::Vector3 | ( | const Vector2 & | other, |
const float | z = 0 ) |
Producto en cruz, devuelve el vector perpendicular.Sistema diestro.
other | Vector por el que se quiere multiplicar |
float Tapioca::Vector3::distance | ( | Vector3 const & | other | ) | const |
Devuelve la distancia entre este vector y otro.
other | Vector hasta el que se quiere calcular la distancia. |
float Tapioca::Vector3::dot | ( | const Vector3 | other | ) | const |
Devuelve el producto escalar entre este vector y otro.
Vector3 Tapioca::Vector3::getNormalized | ( | ) | const |
Devuelve este vector, pero normalizado. Si este vector tiene magnitud cero, devuelve un vector de magnitud cero.
Devuelve la interpolacion entre este vector y otro segun un factor de interpolacion.
end | Punto hasta el que se quiere interpolar. |
t | factor de interpolacion (debe ser un valor entre 0 y 1. Si no, se redondeara al limite mas cercano) |
float Tapioca::Vector3::magnitude | ( | ) | const |
Devuelve la magnitud del vector.
float Tapioca::Vector3::magnitudeSquared | ( | ) | const |
Devuelve la magnitud al cuadrado del vector.
float Tapioca::Vector3::normalize | ( | ) |
Normaliza este vector y devuelve la magnitud que tenia anteriormente. No ocurre nada si su magnitud es 0.
Tapioca::Vector3::operator Vector2 | ( | ) | const |
|
inline |
Devuelve si este vector es diferente a otro.
other | Vector con el que se quiere comparar |
|
inline |
Devuelve el vector resultante de la multiplicacion de este vector con un escalar.
other | Escalar con el que se quiere multiplicar |
Devuelve el vector resultante de la multiplicacion de este vector con otro.
other | Vector con el que se quiere multiplicar |
|
inline |
Devuelve el vector resultante de la multiplicacion de este vector con un escalar.
other | Escalar con el que se quiere multiplicar |
Devuelve el vector resultante de la division de este vector con otro.
other | Vector con el que se quiere dividir |
Devuelve el vector resultante de la suma de este vector con otro.
other | Vector con el que se quiere sumar |
Devuelve el vector resultante de la suma de este vector con otro.
other | Vector con el que se quiere sumar |
|
inline |
Devuelve el vector resultante de este vector cambiandole el signo.
Devuelve el vector resultante de la resta de este vector con otro.
other | Vector con el que se quiere restar |
Devuelve el vector resultante de la resta de este vector con otro.
other | Vector con el que se quiere restar |
|
inline |
Devuelve el vector resultante de la division de este vector con un escalar.
other | Escalar con el que se quiere dividir |
|
inline |
Devuelve el vector resultante de la division de este vector con un escalar.
other | Escalar con el que se quiere dividir |
|
inline |
Devuelve si este vector es igual a otro.
other | Vector con el que se quiere comparar |
Vector3 Tapioca::Vector3::rotateX | ( | const float | degrees | ) | const |
Rota el vector sobre el eje x.
degrees | Grado que se quiere rotar el vector |
Vector3 Tapioca::Vector3::rotateY | ( | const float | degrees | ) | const |
Rota el vector sobre el eje y.
degrees | Grado que se quiere rotar el vector |
Vector3 Tapioca::Vector3::rotateZ | ( | const float | degrees | ) | const |
Rota el vector sobre el eje z.
degrees | Grado que se quiere rotar el vector |
float Tapioca::Vector3::x |
float Tapioca::Vector3::y |
float Tapioca::Vector3::z |