summaryrefslogtreecommitdiff
path: root/includes/misc.h
diff options
context:
space:
mode:
authorSimon <simon@hardwired.org.uk>2011-03-22 16:15:41 (GMT)
committer Simon <simon@hardwired.org.uk>2011-03-22 16:15:41 (GMT)
commitcf4572ec5fa53b0744af989f835de05023928c8d (patch)
treec37c9c6c47117355eed12783978c9d515f0ed1a1 /includes/misc.h
parent4be98bfc3d68e8b793be03397ce9b16f4211e155 (diff)
parentdf27f8420d8bbbf645be6962706a48728859618f (diff)
downloadpowder-cf4572ec5fa53b0744af989f835de05023928c8d.zip
powder-cf4572ec5fa53b0744af989f835de05023928c8d.tar.gz
Fixes from jacksonmj
Diffstat (limited to 'includes/misc.h')
-rw-r--r--includes/misc.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/includes/misc.h b/includes/misc.h
index 4094b39..a929f8c 100644
--- a/includes/misc.h
+++ b/includes/misc.h
@@ -71,4 +71,27 @@ void *file_load(char *fn, int *size);
int cpu_check(void);
+// a b
+// c d
+struct matrix2d {float a,b,c,d;};
+typedef struct matrix2d matrix2d;
+
+// column vector
+struct vector2d {float x,y;};
+typedef struct vector2d vector2d;
+
+matrix2d m2d_multiply_m2d(matrix2d m1, matrix2d m2);
+vector2d m2d_multiply_v2d(matrix2d m, vector2d v);
+matrix2d m2d_multiply_float(matrix2d m, float s);
+vector2d v2d_multiply_float(vector2d v, float s);
+
+vector2d v2d_add(vector2d v1, vector2d v2);
+vector2d v2d_sub(vector2d v1, vector2d v2);
+
+matrix2d m2d_new(float me0, float me1, float me2, float me3);
+vector2d v2d_new(float x, float y);
+
+extern vector2d v2d_zero;
+extern matrix2d m2d_identity;
+
#endif