Second revision of test code for Polyathalon sensor board.

Dependencies:   mbed MODDMA

Committer:
mpanetta
Date:
Sat Nov 05 21:10:10 2011 +0000
Revision:
1:1e37eee8e1cf
Parent:
0:13a7de7ce046

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mpanetta 0:13a7de7ce046 1 /**
mpanetta 0:13a7de7ce046 2 * @file Quaternion.h
mpanetta 0:13a7de7ce046 3 * @author Mike Panetta
mpanetta 0:13a7de7ce046 4 *
mpanetta 0:13a7de7ce046 5 * Created Oct 29th 2011
mpanetta 0:13a7de7ce046 6 *
mpanetta 0:13a7de7ce046 7 * Based on tutorial here: http://www.cprogramming.com/tutorial/3d/quaternions.html
mpanetta 0:13a7de7ce046 8 *
mpanetta 0:13a7de7ce046 9 */
mpanetta 0:13a7de7ce046 10
mpanetta 0:13a7de7ce046 11 #ifndef _QUATERNION_H_
mpanetta 0:13a7de7ce046 12 #define _QUATERNION_H_
mpanetta 0:13a7de7ce046 13
mpanetta 0:13a7de7ce046 14 #include <math.h>
mpanetta 0:13a7de7ce046 15
mpanetta 0:13a7de7ce046 16 class Quaternion
mpanetta 0:13a7de7ce046 17 {
mpanetta 0:13a7de7ce046 18 public:
mpanetta 0:13a7de7ce046 19 Quaternion(float const & a,
mpanetta 0:13a7de7ce046 20 float const & b,
mpanetta 0:13a7de7ce046 21 float const & c,
mpanetta 0:13a7de7ce046 22 float const & d) : w(a), x(b), y(c), z(d) {}
mpanetta 0:13a7de7ce046 23
mpanetta 0:13a7de7ce046 24 float norm(void)
mpanetta 0:13a7de7ce046 25 {
mpanetta 0:13a7de7ce046 26 return sqrtf(w*w+x*x+y*y+z*z);
mpanetta 0:13a7de7ce046 27 }
mpanetta 0:13a7de7ce046 28
mpanetta 0:13a7de7ce046 29 float real(void)
mpanetta 0:13a7de7ce046 30 {
mpanetta 0:13a7de7ce046 31 return w;
mpanetta 0:13a7de7ce046 32 }
mpanetta 0:13a7de7ce046 33
mpanetta 0:13a7de7ce046 34 Quaternion unreal(void)
mpanetta 0:13a7de7ce046 35 {
mpanetta 0:13a7de7ce046 36 return Quaternion(0, x, y, z);
mpanetta 0:13a7de7ce046 37 }
mpanetta 0:13a7de7ce046 38
mpanetta 0:13a7de7ce046 39 private:
mpanetta 0:13a7de7ce046 40
mpanetta 0:13a7de7ce046 41 float w, x, y, z;
mpanetta 0:13a7de7ce046 42 };
mpanetta 0:13a7de7ce046 43
mpanetta 0:13a7de7ce046 44
mpanetta 0:13a7de7ce046 45 #endif //_QUATERNION_H)_