|
glVertex
5.5.2
|
quaternion More...
#include <glslmath.h>
Public Member Functions | |
| quat (const vec4 &v=vec4(0, 0, 0, 1)) | |
| default constructor | |
| quat (double x, double y, double z, double w) | |
| custom constructor | |
| quat (const vec3 &v, double w) | |
| custom constructor | |
| double | dot (const quat &r) const |
| inner product | |
| double | length () const |
| get quaternion length | |
| double | norm () const |
| get quaternion norm | |
| quat | normalize () const |
| normalization | |
| quat | conjugate () const |
| conjugation | |
| quat | invert () const |
| invert normalized quaternion | |
| operator vec4 () const | |
| cast operator | |
| operator mat3 () const | |
| cast operator | |
| quat & | operator*= (const quat &q) |
| inplace multiplication | |
| operator std::string () | |
| string cast operator | |
| std::string | to_string (std::string delimiter=", ", int space=0) |
| conversion to string | |
Static Public Member Functions | |
| static quat | rotate (double angle, const vec3 &v) |
| create rotating quaternion More... | |
| static quat | rotate (const vec3 &from, const vec3 &to) |
| create rotating quaternion from two vectors | |
Friends | |
| quat | operator+ (const quat &a, const quat &b) |
| addition of two quaternions | |
| quat | operator- (const quat &a, const quat &b) |
| subtraction of two quaternions | |
| quat | operator* (const quat &a, const quat &b) |
| multiplication of two quaternions | |
| quat | operator* (double a, const quat &b) |
| left-hand side scalar multiplication | |
| quat | operator* (const quat &a, double b) |
| right-hand side scalar multiplication | |
| quat | operator- (const quat &r) |
| conjugation of a quaternion | |
| vec3 | operator* (const quat &r, const vec3 &v) |
| right-hand side vector multiplication with normalized quaternion | |
quaternion
create rotating quaternion
1.8.17