0.3.1
4x3 Matrix

Data Structures

struct  fix16_mat43
 Not yet documented. More...
 

Macros

#define FIX16_MAT43_ROWS   (4)
 Not yet documented.
 
#define FIX16_MAT43_COLUMNS   (3)
 Not yet documented.
 
#define FIX16_MAT43_ARR_COUNT   (FIX16_MAT43_COLUMNS * FIX16_MAT43_ROWS)
 Not yet documented.
 

Typedefs

typedef struct fix16_mat43 fix16_mat43_t
 Not yet documented.
 

Functions

void fix16_mat43_zero (fix16_mat43_t *m0)
 Not yet documented.
 
void fix16_mat43_identity (fix16_mat43_t *m0)
 Not yet documented.
 
void fix16_mat43_dup (const fix16_mat43_t *m0, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_invert (const fix16_mat43_t *m0, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_inplace_invert (fix16_mat43_t *m0)
 Not yet documented.
 
void fix16_mat43_lookat (const fix16_vec3_t *from, const fix16_vec3_t *to, const fix16_vec3_t *up, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_mul (const fix16_mat43_t *m0, const fix16_mat43_t *m1, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_pos3_mul (const fix16_mat43_t *m0, const fix16_vec3_t *v, fix16_vec3_t *result)
 Not yet documented.
 
void fix16_mat43_vec3_mul (const fix16_mat43_t *m0, const fix16_vec3_t *v, fix16_vec3_t *result)
 Not yet documented.
 
void fix16_mat43_x_rotate (const fix16_mat43_t *m0, angle_t angle, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_y_rotate (const fix16_mat43_t *m0, angle_t angle, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_z_rotate (const fix16_mat43_t *m0, angle_t angle, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_x_rotation_set (angle_t rx, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_y_rotation_set (angle_t ry, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_z_rotation_set (angle_t rz, fix16_mat43_t *result)
 Not yet documented.
 
void fix16_mat43_rotation_set (angle_t rx, angle_t ry, angle_t rz, fix16_mat43_t *result)
 Not yet documented.
 
size_t fix16_mat43_str (const fix16_mat43_t *m0, char *buffer, int32_t decimals)
 Not yet documented.
 

Detailed Description

Description goes here.


Data Structure Documentation

◆ fix16_mat43

struct fix16_mat43

Not yet documented.

Note
Row-major matrix.
Data Fields
fix16_mat33_t rotation Not yet documented.
fix16_vec3_t translation Not yet documented.

Typedef Documentation

◆ fix16_mat43_t

typedef struct fix16_mat43 fix16_mat43_t

Not yet documented.

Note
Row-major matrix.

Function Documentation

◆ fix16_mat43_zero()

void fix16_mat43_zero ( fix16_mat43_t m0)

Not yet documented.

Parameters
m0Not yet documented.

◆ fix16_mat43_identity()

void fix16_mat43_identity ( fix16_mat43_t m0)

Not yet documented.

Parameters
m0Not yet documented.

◆ fix16_mat43_dup()

void fix16_mat43_dup ( const fix16_mat43_t m0,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_invert()

void fix16_mat43_invert ( const fix16_mat43_t m0,
fix16_mat43_t result 
)

Not yet documented.

The expectation is that the rotation part of the matrix is orthogonal.

It's then possible to just transpose the 3x3 rotation matrix within the 4x3 matrix and negate the translation vector.

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

◆ fix16_mat43_inplace_invert()

void fix16_mat43_inplace_invert ( fix16_mat43_t m0)

Not yet documented.

The expectation is that the rotation part of the matrix is orthogonal.

It's then possible to just transpose the 3x3 rotation matrix within the 4x3 matrix and negate the translation vector.

Parameters
m0Not yet documented.

◆ fix16_mat43_lookat()

void fix16_mat43_lookat ( const fix16_vec3_t from,
const fix16_vec3_t to,
const fix16_vec3_t up,
fix16_mat43_t result 
)

Not yet documented.

Parameters
fromNot yet documented.
toNot yet documented.
upNot yet documented.
[out]resultNot yet documented.

◆ fix16_mat43_mul()

void fix16_mat43_mul ( const fix16_mat43_t m0,
const fix16_mat43_t m1,
fix16_mat43_t result 
)

Not yet documented.

Parameters
m0Not yet documented.
m1Not yet documented.
[out]resultNot yet documented.

◆ fix16_mat43_pos3_mul()

void fix16_mat43_pos3_mul ( const fix16_mat43_t m0,
const fix16_vec3_t v,
fix16_vec3_t result 
)

Not yet documented.

Parameters
m0Not yet documented.
vNot yet documented.
[out]resultNot yet documented.

◆ fix16_mat43_vec3_mul()

void fix16_mat43_vec3_mul ( const fix16_mat43_t m0,
const fix16_vec3_t v,
fix16_vec3_t result 
)

Not yet documented.

Parameters
m0Not yet documented.
vNot yet documented.
[out]resultNot yet documented.

◆ fix16_mat43_x_rotate()

void fix16_mat43_x_rotate ( const fix16_mat43_t m0,
angle_t  angle,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_y_rotate()

void fix16_mat43_y_rotate ( const fix16_mat43_t m0,
angle_t  angle,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_z_rotate()

void fix16_mat43_z_rotate ( const fix16_mat43_t m0,
angle_t  angle,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_x_rotation_set()

void fix16_mat43_x_rotation_set ( angle_t  rx,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_y_rotation_set()

void fix16_mat43_y_rotation_set ( angle_t  ry,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_z_rotation_set()

void fix16_mat43_z_rotation_set ( angle_t  rz,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_rotation_set()

void fix16_mat43_rotation_set ( angle_t  rx,
angle_t  ry,
angle_t  rz,
fix16_mat43_t result 
)

Not yet documented.

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

◆ fix16_mat43_str()

size_t fix16_mat43_str ( const fix16_mat43_t m0,
char *  buffer,
int32_t  decimals 
)

Not yet documented.

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