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

ConstructorDescripción
Quaternion(double w, double x, double y, double z)Inicializa una nueva instancia de la clase Quaternion.
Quaternion()

Campos

CampoDescripción
IDENTITYEl cuaternión de identidad.
wEl componente w.
xEl componente x.
yEl componente y.
zEl componente z.

Métodos

MétodoDescripció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ámetroTipoDescripción
wdoublecomponente w del cuaternión
xdoublecomponente x del cuaternión
ydoublecomponente y del cuaternión
zdoublecomponente 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ámetroTipoDescripción
lhsQuaternionCuaternión izquierdo
rhsQuaternionCuaternió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ámetroTipoDescripción
rhsQuaternion

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ámetroTipoDescripción
srcQuaternion

div(Quaternion lhs, double rhs)

public static Quaternion div(Quaternion lhs, double rhs)

Sobrecarga de operador para /

Parameters:

ParámetroTipoDescripción
lhsQuaternionCuaternión izquierdo
rhsdoubleCuaternión derecho

Returns: Quaternion - Result quaternion

dot(Quaternion q)

public double dot(Quaternion q)

Producto punto

Parameters:

ParámetroTipoDescripción
qQuaternionEl cuaternión

Returns: double - Valor del punto

equals(Object obj)

public boolean equals(Object obj)

Comprobar si dos cuaterniones son iguales

Parameters:

ParámetroTipoDescripción
objjava.lang.ObjectEl 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ámetroTipoDescripción
adoubleRotación en sentido horario en radianes
axisVector3Eje

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ámetroTipoDescripción
eulerAngleVector3Á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ámetroTipoDescripción
cabeceodoubleCabeceo en radianes
guiñadadoubleGuiñada en radianes
balanceodoubleBalanceo 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ámetroTipoDescripción
origVector3Dirección original
destVector3Direcció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ámetroTipoDescripción
tfloatEl coeficiente para interpolar.
fromQuaternionCuaternión de origen.
toQuaternionCuaternió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ámetroTipoDescripción
lhsQuaternionCuaternión izquierdo
rhsQuaternionCuaternió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ámetroTipoDescripción
qQuaternionEl cuaternión de rotación
vVector3Vector 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ámetroTipoDescripción
qQuaternionEl cuaternión de rotación
vVector4Vector 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ámetroTipoDescripción
lhsQuaternionCuaternión izquierdo
rhsdoubleCuaternió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ámetroTipoDescripción
vVector3El cuaternión de rotación
qQuaternionVector 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ámetroTipoDescripción
lhsQuaternionValor del lado izquierdo.
rhsQuaternionValor 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ámetroTipoDescripción
lhsQuaternionValor del lado izquierdo.
rhsQuaternionValor 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ámetroTipoDescripción
tdoublet está entre 0 y 1
v1QuaternionPrimer valor
v2QuaternionSegundo 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ámetroTipoDescripción
ángulodouble[]El ángulo a rotar, en radianes.
axisVector3El 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ámetroTipoDescripción
translationVector3La 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ámetroTipoDescripción
arg0long

wait(long arg0, int arg1)

public final void wait(long arg0, int arg1)

Parameters:

ParámetroTipoDescripción
arg0long
arg1int