matrix.h
#ifndef VN_MATRIX_H_INCLUDED
#define VN_MATRIX_H_INCLUDED
#include "vn/util/compiler.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef union
{
float e[3*3];
/* Check if the compiler supports anonymous unions. */
#if defined(__STDC_VERSION___) && (__STDC_VERSION__ >= 201112L) && defined(__GNUC__)
struct
{
float e00;
float e10;
float e20;
float e01;
float e11;
float e21;
float e02;
float e12;
float e22;
};
#endif
} mat3f;
typedef union
{
float c[4];
/* Check if the compiler supports anonymous unions. */
#if defined(__STDC_VERSION___) && (__STDC_VERSION__ >= 201112L) && defined(__GNUC__)
struct
{
float x;
float y;
float z;
float w;
};
struct
{
float c0;
float c1;
float c2;
float c3;
};
#endif
} quatf;
void vn_m3_init_fa(mat3f* m, const float* fa);
void strFromMat3f(char* out, mat3f m);
mat3f vnm_negative_mat3f(mat3f m);
#ifdef __cplusplus
}
#endif
#endif
mat3f
Represents a 3x3 matrix with an underlying data type of float.
Definition: matrix.h:11
quatf
Represents a quaternion reading with underlying data type of float.
Definition: matrix.h:36