0.3.1
Quaternion

Data Structures

struct  fix16_quat_t
 Not yet documented. More...
 

Macros

#define FIX16_QUAT_INITIALIZER(x, y, z, w)
 Macro for defininge fix16_quat_t constant values.
 

Functions

void fix16_quat_euler (angle_t rx, angle_t ry, angle_t rz, fix16_quat_t *result)
 Convert Euler angles to a quaternion in XYZ order.
 
void fix16_quat_axis_angle (const fix16_vec3_t *axis, angle_t angle, fix16_quat_t *result)
 Convert an axis-angle representation to a quaternion.
 
void fix16_quat_conjugate (const fix16_quat_t *q0, fix16_quat_t *result)
 Not yet documented.
 
void fix16_quat_mul (const fix16_quat_t *q0, const fix16_quat_t *q1, fix16_quat_t *result)
 Not yet documented.
 
void fix16_quat_vec3_mul (const fix16_quat_t *q0, const fix16_vec3_t *v0, fix16_vec3_t *result)
 Not yet documented.
 
size_t fix16_quat_str (const fix16_quat_t *q0, char *buffer, int32_t decimals)
 Not yet documented.
 

Detailed Description

Description goes here.


Data Structure Documentation

◆ fix16_quat_t

struct fix16_quat_t

Not yet documented.

Data Fields
fix16_vec3_t comp Not yet documented.
fix16_t w Not yet documented.

Macro Definition Documentation

◆ FIX16_QUAT_INITIALIZER

#define FIX16_QUAT_INITIALIZER (   x,
  y,
  z,
 
)
Value:
{ \
{ \
FIX16(x), \
FIX16(y), \
FIX16(z) \
}, \
FIX16(w) \
}

Macro for defininge fix16_quat_t constant values.

Note
The argument is evaluated multiple times, and also otherwise you should only use this for constant values. For runtime-conversions, use the inlined functions below.
Parameters
wThe constant value.
xThe constant value.
yThe constant value.
zThe constant value.

Function Documentation

◆ fix16_quat_euler()

void fix16_quat_euler ( angle_t  rx,
angle_t  ry,
angle_t  rz,
fix16_quat_t result 
)

Convert Euler angles to a quaternion in XYZ order.

Parameters
rxNot yet documented.
ryNot yet documented.
rzNot yet documented.
[out]resultNot yet documented.

◆ fix16_quat_axis_angle()

void fix16_quat_axis_angle ( const fix16_vec3_t axis,
angle_t  angle,
fix16_quat_t result 
)

Convert an axis-angle representation to a quaternion.

Parameters
axisNot yet documented.
angleNot yet documented.
[out]resultNot yet documented.

◆ fix16_quat_conjugate()

void fix16_quat_conjugate ( const fix16_quat_t q0,
fix16_quat_t result 
)

Not yet documented.

Parameters
q0Not yet documented.
[out]resultNot yet documented.

◆ fix16_quat_mul()

void fix16_quat_mul ( const fix16_quat_t q0,
const fix16_quat_t q1,
fix16_quat_t result 
)

Not yet documented.

Parameters
q0Not yet documented.
q1Not yet documented.
[out]resultNot yet documented.

◆ fix16_quat_vec3_mul()

void fix16_quat_vec3_mul ( const fix16_quat_t q0,
const fix16_vec3_t v0,
fix16_vec3_t result 
)

Not yet documented.

Parameters
q0Not yet documented.
v0Not yet documented.
[out]resultNot yet documented.

◆ fix16_quat_str()

size_t fix16_quat_str ( const fix16_quat_t q0,
char *  buffer,
int32_t  decimals 
)

Not yet documented.

Parameters
q0Not yet documented.
[out]bufferNot yet documented.
decimalsNot yet documented.
Returns
The string length, not counting the NUL character.