Quaternion
Inheritance: java.lang.Object
All Implemented Interfaces: com.aspose.threed.Struct, java.io.Serializable
public final class Quaternion implements Struct<Quaternion>, Serializable
Los cuaterniones se usan normalmente para realizar rotaciones en gráficos por computadora.
Constructores
| Constructor | Descripción |
|---|---|
| Quaternion(double w, double x, double y, double z) | Inicializa una nueva instancia de la clase Quaternion. |
| Quaternion() |
Campos
| Campo | Descripción |
|---|---|
| IDENTITY | El cuaternión de identidad. |
| w | El componente w. |
| x | El componente x. |
| y | El componente y. |
| z | El componente z. |
Métodos
| Método | Descripción |
|---|---|
| add(Quaternion lhs, Quaternion rhs) | Sobrecarga de operador para + |
| clone() | |
| concat(Quaternion rhs) | Concatenar dos cuaterniones |
| conjugate() | Devuelve un cuaternión conjugado del cuaternión actual |
| copyFrom(Quaternion src) | |
| div(Quaternion lhs, double rhs) | Sobrecarga de operador para / |
| dot(Quaternion q) | Producto punto |
| equals(Object obj) | Comprobar si dos cuaterniones son iguales |
| eulerAngles() | Convierte el cuaternión a una rotación representada por ángulos de Euler. Todos los componentes están en radianes. |
| fromAngleAxis(double a, Vector3 axis) | Crea un cuaternión alrededor del eje dado y lo rota en sentido horario |
| fromEulerAngle(Vector3 eulerAngle) | Crea un cuaternión a partir del ángulo de Euler dado |
| fromEulerAngle(double pitch, double yaw, double roll) | Crea un cuaternión a partir del ángulo de Euler dado |
| fromRotation(Vector3 orig, Vector3 dest) | Crea un cuaternión que rota de la dirección original a la de destino |
| getClass() | |
| getLength() | Obtiene la longitud del cuaternión |
| hashCode() | Obtiene el código hash del cuaternión |
| interpolate(float t, Quaternion from, Quaternion to) | Rellena este cuaternión con el valor interpolado entre los argumentos de cuaternión dados para un t entre ‘from’ y ’to’. |
| inverse() | Devuelve un cuaternión inverso del cuaternión actual |
| mul(Quaternion lhs, Quaternion rhs) | Sobrecarga de operador para * |
| mul(Quaternion q, Vector3 v) | Sobrecarga de operador para * |
| mul(Quaternion q, Vector4 v) | Sobrecarga de operador para * |
| mul(Quaternion lhs, double rhs) | Sobrecarga de operador para * |
| mul(Vector3 v, Quaternion q) | Sobrecarga de operador para * |
| normalize() | Normaliza el cuaternión |
| notify() | |
| notifyAll() | |
| op_eq(Quaternion lhs, Quaternion rhs) | Operador de igualdad para cuaternión |
| op_ne(Quaternion lhs, Quaternion rhs) | Operador de desigualdad para cuaternión |
| slerp(double t, Quaternion v1, Quaternion v2) | Realiza una interpolación lineal esférica entre dos valores |
| toAngleAxis(double[] angle, Vector3 axis) | Descompone el cuaternión en ángulo y eje |
| toMatrix() | Convierte la rotación presentada por el cuaternión a una matriz de transformación. |
| toMatrix(Vector3 translation) | Convierte la rotación presentada por el cuaternión a una matriz de transformación. |
| toString() | Obtiene la representación del cuaternión en cadena |
| wait() | |
| wait(long arg0) | |
| wait(long arg0, int arg1) |
Quaternion(double w, double x, double y, double z)
public Quaternion(double w, double x, double y, double z)
Inicializa una nueva instancia de la clase Quaternion.
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| w | double | componente w del cuaternión |
| x | double | componente x del cuaternión |
| y | double | componente y del cuaternión |
| z | double | componente z del cuaternión |
Quaternion()
public Quaternion()
IDENTITY
public static final Quaternion IDENTITY
El cuaternión de identidad.
w
public double w
El componente w.
x
public double x
El componente x.
y
public double y
El componente y.
z
public double z
El componente z.
add(Quaternion lhs, Quaternion rhs)
public static Quaternion add(Quaternion lhs, Quaternion rhs)
Sobrecarga de operador para +
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| lhs | Quaternion | Cuaternión izquierdo |
| rhs | Quaternion | Cuaternión derecho |
Returns: Quaternion - Result quaternion
clone()
public Quaternion clone()
Clonar la instancia actual
Returns: Quaternion
concat(Quaternion rhs)
public Quaternion concat(Quaternion rhs)
Concatenar dos cuaterniones
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| rhs | Quaternion |
Returns: Quaternion
conjugate()
public Quaternion conjugate()
Devuelve un cuaternión conjugado del cuaternión actual
Returns: Quaternion - The conjugate quaternion.
copyFrom(Quaternion src)
public void copyFrom(Quaternion src)
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| src | Quaternion |
div(Quaternion lhs, double rhs)
public static Quaternion div(Quaternion lhs, double rhs)
Sobrecarga de operador para /
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| lhs | Quaternion | Cuaternión izquierdo |
| rhs | double | Cuaternión derecho |
Returns: Quaternion - Result quaternion
dot(Quaternion q)
public double dot(Quaternion q)
Producto punto
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| q | Quaternion | El cuaternión |
Returns: double - Valor del punto
equals(Object obj)
public boolean equals(Object obj)
Comprobar si dos cuaterniones son iguales
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| obj | java.lang.Object | El objeto para comprobar igualdad. |
Returns: boolean - Verdadero si todos los componentes son idénticamente iguales.
eulerAngles()
public Vector3 eulerAngles()
Convierte el cuaternión a una rotación representada por ángulos de Euler. Todos los componentes están en radianes.
Returns: Vector3 - Result vector
fromAngleAxis(double a, Vector3 axis)
public static Quaternion fromAngleAxis(double a, Vector3 axis)
Crea un cuaternión alrededor del eje dado y lo rota en sentido horario
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| a | double | Rotación en sentido horario en radianes |
| axis | Vector3 | Eje |
Returns: Quaternion - Created quaternion
fromEulerAngle(Vector3 eulerAngle)
public static Quaternion fromEulerAngle(Vector3 eulerAngle)
Crea un cuaternión a partir del ángulo de Euler dado
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| eulerAngle | Vector3 | Ángulo de Euler en radianes |
Returns: Quaternion - Created quaternion
fromEulerAngle(double pitch, double yaw, double roll)
public static Quaternion fromEulerAngle(double pitch, double yaw, double roll)
Crea un cuaternión a partir del ángulo de Euler dado
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| cabeceo | double | Cabeceo en radianes |
| guiñada | double | Guiñada en radianes |
| balanceo | double | Balanceo en radianes |
Returns: Quaternion - Created quaternion
fromRotation(Vector3 orig, Vector3 dest)
public static Quaternion fromRotation(Vector3 orig, Vector3 dest)
Crea un cuaternión que rota de la dirección original a la de destino
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| orig | Vector3 | Dirección original |
| dest | Vector3 | Dirección de destino |
Returns: Quaternion - Created quaternion
getClass()
public final native Class<?> getClass()
Returns: java.lang.Class
getLength()
public double getLength()
Obtiene la longitud del cuaternión
Returns: double - la longitud del cuaternión
hashCode()
public int hashCode()
Obtiene el código hash del cuaternión
Returns: int - El código hash del Quaternion
interpolate(float t, Quaternion from, Quaternion to)
public static Quaternion interpolate(float t, Quaternion from, Quaternion to)
Rellena este cuaternión con el valor interpolado entre los argumentos de cuaternión dados para un t entre ‘from’ y ’to’.
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| t | float | El coeficiente para interpolar. |
| from | Quaternion | Cuaternión de origen. |
| to | Quaternion | Cuaternión de destino. |
Returns: Quaternion - The interpolated quaternion.
inverse()
public Quaternion inverse()
Devuelve un cuaternión inverso del cuaternión actual
Returns: Quaternion - Inverse quaternion.
mul(Quaternion lhs, Quaternion rhs)
public static Quaternion mul(Quaternion lhs, Quaternion rhs)
Sobrecarga de operador para *
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| lhs | Quaternion | Cuaternión izquierdo |
| rhs | Quaternion | Cuaternión derecho |
Returns: Quaternion - Result quaternion
mul(Quaternion q, Vector3 v)
public static Vector3 mul(Quaternion q, Vector3 v)
Sobrecarga de operador para *
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| q | Quaternion | El cuaternión de rotación |
| v | Vector3 | Vector a rotar |
Returns: Vector3 - Rotated vector
mul(Quaternion q, Vector4 v)
public static Vector4 mul(Quaternion q, Vector4 v)
Sobrecarga de operador para *
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| q | Quaternion | El cuaternión de rotación |
| v | Vector4 | Vector a rotar |
Returns: Vector4 - Rotated vector
mul(Quaternion lhs, double rhs)
public static Quaternion mul(Quaternion lhs, double rhs)
Sobrecarga de operador para *
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| lhs | Quaternion | Cuaternión izquierdo |
| rhs | double | Cuaternión derecho |
Returns: Quaternion - Result quaternion
mul(Vector3 v, Quaternion q)
public static Vector3 mul(Vector3 v, Quaternion q)
Sobrecarga de operador para *
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| v | Vector3 | El cuaternión de rotación |
| q | Quaternion | Vector a rotar |
Returns: Vector3 - Rotated vector
normalize()
public Quaternion normalize()
Normaliza el cuaternión
Returns: Quaternion - Normalized quaternion.
notify()
public final native void notify()
notifyAll()
public final native void notifyAll()
op_eq(Quaternion lhs, Quaternion rhs)
public static boolean op_eq(Quaternion lhs, Quaternion rhs)
Operador de igualdad para cuaternión
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| lhs | Quaternion | Valor del lado izquierdo. |
| rhs | Quaternion | Valor del lado derecho. |
Returns: boolean - Verdadero si todos los componentes son idénticamente iguales.
op_ne(Quaternion lhs, Quaternion rhs)
public static boolean op_ne(Quaternion lhs, Quaternion rhs)
Operador de desigualdad para cuaternión
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| lhs | Quaternion | Valor del lado izquierdo. |
| rhs | Quaternion | Valor del lado derecho. |
Returns: booleano - Verdadero si dos cuaterniones no son iguales.
slerp(double t, Quaternion v1, Quaternion v2)
public static Quaternion slerp(double t, Quaternion v1, Quaternion v2)
Realiza una interpolación lineal esférica entre dos valores
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| t | double | t está entre 0 y 1 |
| v1 | Quaternion | Primer valor |
| v2 | Quaternion | Segundo valor |
Returns: Quaternion
toAngleAxis(double[] angle, Vector3 axis)
public void toAngleAxis(double[] angle, Vector3 axis)
Descompone el cuaternión en ángulo y eje
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| ángulo | double[] | El ángulo a rotar, en radianes. |
| axis | Vector3 | El eje alrededor del cual gira. |
toMatrix()
public Matrix4 toMatrix()
Convierte la rotación presentada por el cuaternión a una matriz de transformación.
Returns: Matrix4 - The matrix representation of current quaternion.
toMatrix(Vector3 translation)
public Matrix4 toMatrix(Vector3 translation)
Convierte la rotación presentada por el cuaternión a una matriz de transformación.
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| translation | Vector3 | La parte de traslación de la matriz. |
Returns: Matrix4 - The matrix representation of current quaternion.
toString()
public String toString()
Obtiene la representación del cuaternión en cadena
Returns: java.lang.String - Cadena del objeto
wait()
public final void wait()
wait(long arg0)
public final void wait(long arg0)
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| arg0 | long |
wait(long arg0, int arg1)
public final void wait(long arg0, int arg1)
Parameters:
| Parámetro | Tipo | Descripción |
|---|---|---|
| arg0 | long | |
| arg1 | int |