Proper Subversion configuration.
[newkind] / vector.h
1 /*
2 * Elite - The New Kind.
3 *
4 * Reverse engineered from the BBC disk version of Elite.
5 * Additional material by C.J.Pinder.
6 *
7 * The original Elite code is (C) I.Bell & D.Braben 1984.
8 * This version re-engineered in C by C.J.Pinder 1999-2001.
9 *
10 * email: <christian@newkind.co.uk>
11 *
12 */
13
14
15 #ifndef VECTOR_H
16 #define VECTOR_H
17
18 struct vector
19 {
20 double x;
21 double y;
22 double z;
23 };
24
25 typedef struct vector Matrix[3];
26 typedef struct vector Vector;
27
28 void mult_matrix (struct vector *first, struct vector *second);
29 void mult_vector (struct vector *vec, struct vector *mat);
30 double vector_dot_product (struct vector *first, struct vector *second);
31 struct vector unit_vector (struct vector *vec);
32 void set_init_matrix (struct vector *mat);
33 void tidy_matrix (struct vector *mat);
34
35 #endif
36