quaternion QML Value Type
Un tipo quaternion tiene atributos escalares, x, y y z. Más...
Descripción detallada
Un tipo quaternion tiene atributos scalar, x, y y z.
Para crear un valor quaternion, especifíquelo como una cadena "scalar,x,y,z", o defina los componentes individualmente, o compóngalo con la función Qt.quaternion().
El tipo quaternion tiene las siguientes funciones idempotentes que pueden invocarse en QML:
| Función Firma | Descripción | Ejemplo |
|---|---|---|
| real dotProduct(quaternion otro) | Devuelve el resultado real escalar del producto punto de this quaternion con el other quaternion | |
| quaternion times(quaternion otro) | Devuelve el resultado cuaterniónico de multiplicar this cuaternión con other cuaternión, lo que corresponde a aplicar las dos rotaciones | |
| vector3d veces(vector3d vector) | Devuelve el vector3d resultado de rotar el vector con this quaternion | |
| quaternion veces(factor real) | Devuelve el resultado de multiplicar this quaternion por el escalar factor | var a = Qt.quaternion(1,2,3,4); var b = 4.48; var c = a.times(b); console.log(c.toString()); // QQuaternion(4.48, 8.96, 13.44, 17.92) |
| quaternion plus(quaternion otro) | Devuelve el resultado de sumar this quaternion con other quaternion | |
| quaternion menos(quaternion otro) | Devuelve el quaternion resultante de la resta de other quaternion de this quaternion | |
| quaternion normalizado() | Devuelve la forma unitaria normalizada de this quaternion | var a = Qt.quaternion(1,2,3,4); var b = a.normalized(); console.log(b.toString()); // QQuaternion(0.182574, 0.365148, 0.547723, 0.730297) |
| quaternion invertido() | Devuelve la inversa de this quaternion | var a = Qt.quaternion(0.5,0.5,0.5,-0.5); var b = a.inverted(); console.log(b.toString()); // QQuaternion(0.5, -0.5, -0.5, 0.5) |
| quaternion conjugado() | Devuelve el conjugado de this quaternion | var a = Qt.quaternion(1,2,3,4); var b = a.conjugated() console.log(b.toString()); // QQuaternion(1, -2, -3, -4) |
| longitud real() | Devuelve el valor real escalar de la longitud de this quaternion | var a = Qt.quaternion(1,2,3,4); var b = a.length(); console.log(b.toString()); // 5.477225575051661 |
| vector3d toEulerAngles() | Devuelve el vector3d ángulos de Euler (en grados) que corresponde a this quaternion | var a = Qt.quaternion(0.933012,0.25,-0.25,0.066987); var b = a.toEulerAngles(); console.log(b.toString()); // QVector3D(30, -30, -4.28846e-05) |
| vector4d toVector4d() | Devuelve el vector4d resultado de convertir this quaternion a un vector4d | var a = Qt.quaternion(1,2,3,4); var b = a.toVector4d(); console.log(b.toString()); // QVector4D(2, 3, 4, 1) |
| bool fuzzyEquals(cuaternión otro, real épsilon) | Devuelve verdadero si this quaternion es aproximadamente igual a other quaternion. La aproximación será verdadera si cada atributo de this está dentro de epsilon de other. Tenga en cuenta que epsilon es un argumento opcional, el valor por defecto epsilon es 0.00001. |
Las propiedades de tipo quaternion tienen Qt.quaternion(1, 0, 0, 0) como valor por defecto.
Este tipo de valor lo proporciona la importación QtQuick.
Véase también Tipos de valor QML.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.