diff options
author | Vito Caputo <vcaputo@gnugeneration.com> | 2017-01-18 17:14:52 -0800 |
---|---|---|
committer | Vito Caputo <vcaputo@gnugeneration.com> | 2017-01-18 17:31:44 -0800 |
commit | 524db0cf19648e3c7c78d3e73103b7a0bdcd6bfc (patch) | |
tree | 6fd682629904a210927797c92d956c208666b03a /modules/ray/ray_euler.h | |
parent | ee2073d4e411555aba878277131b56f7eb562c84 (diff) |
*: move source into src/ subdir
Restoring some organizational sanity since adopting autotools.
Diffstat (limited to 'modules/ray/ray_euler.h')
-rw-r--r-- | modules/ray/ray_euler.h | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/modules/ray/ray_euler.h b/modules/ray/ray_euler.h deleted file mode 100644 index 86f5221..0000000 --- a/modules/ray/ray_euler.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef _RAY_EULER_H -#define _RAY_EULER_H - -#include <math.h> - -#include "ray_3f.h" - - -/* euler angles are convenient for describing orientation */ -typedef struct ray_euler_t { - float pitch; /* pitch in radiasn */ - float yaw; /* yaw in radians */ - float roll; /* roll in radians */ -} ray_euler_t; - - -/* convenience macro for converting degrees to radians */ -#define RAY_EULER_DEGREES(_deg) \ - (_deg * (2 * M_PI / 360.0f)) - - -/* produce basis vectors from euler angles */ -static inline void ray_euler_basis(ray_euler_t *e, ray_3f_t *forward, ray_3f_t *up, ray_3f_t *left) -{ - float cos_yaw = cosf(e->yaw); - float sin_yaw = sinf(e->yaw); - float cos_roll = cosf(e->roll); - float sin_roll = sinf(e->roll); - float cos_pitch = cosf(e->pitch); - float sin_pitch = sinf(e->pitch); - - forward->x = sin_yaw; - forward->y = -sin_pitch * cos_yaw; - forward->z = cos_pitch * cos_yaw; - - up->x = -cos_yaw * sin_roll; - up->y = -sin_pitch * sin_yaw * sin_roll + cos_pitch * cos_roll; - up->z = cos_pitch * sin_yaw * sin_roll + sin_pitch * cos_roll; - - left->x = cos_yaw * cos_roll; - left->y = sin_pitch * sin_yaw * cos_roll + cos_pitch * sin_roll; - left->z = -cos_pitch * sin_yaw * cos_roll + sin_pitch * sin_roll; -} - -#endif |