compatibility changes
Fork of LSM303DLHC by
Revision 5:0136aae4f1ff, committed 2014-09-26
- Comitter:
- jn80842
- Date:
- Fri Sep 26 23:05:10 2014 +0000
- Parent:
- 4:612f7d5a822d
- Commit message:
- compatibility
Changed in this revision
vector.cpp | Show annotated file Show diff for this revision Revisions of this file |
vector.h | Show annotated file Show diff for this revision Revisions of this file |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vector.cpp Fri Sep 26 23:05:10 2014 +0000 @@ -0,0 +1,22 @@ +#include <vector.h> +#include <math.h> + +void vector_cross(const vector *a,const vector *b, vector *out) +{ + out->x = a->y*b->z - a->z*b->y; + out->y = a->z*b->x - a->x*b->z; + out->z = a->x*b->y - a->y*b->x; +} + +float vector_dot(const vector *a,const vector *b) +{ + return a->x*b->x+a->y*b->y+a->z*b->z; +} + +void vector_normalize(vector *a) +{ + float mag = sqrt(vector_dot(a,a)); + a->x /= mag; + a->y /= mag; + a->z /= mag; +} \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vector.h Fri Sep 26 23:05:10 2014 +0000 @@ -0,0 +1,11 @@ +#ifndef vector_h +#define vector_h +typedef struct vector +{ + float x, y, z; +} vector; + +extern void vector_cross(const vector *a, const vector *b, vector *out); +extern float vector_dot(const vector *a,const vector *b); +extern void vector_normalize(vector *a); +#endif \ No newline at end of file