cross compile build script
[fishladder.git] / vg / vg_m.h
index 3b7feb41df774ed3676758df9b01d1720df78589..577138fb12e575698d1c941e15958f05a898beeb 100644 (file)
--- a/vg/vg_m.h
+++ b/vg/vg_m.h
@@ -55,6 +55,11 @@ static inline void v2i_copy( v2i a, v2i b )
        b[0] = a[0]; b[1] = a[1];
 }
 
+static inline int v2i_eq( v2i a, v2i b )
+{
+       return ((a[0] == b[0]) && (a[1] == b[1]));
+}
+
 static inline void v2i_add( v2i a, v2i b, v2i d )
 {
        d[0] = a[0]+b[0]; d[1] = a[1]+b[1];
@@ -105,7 +110,8 @@ static inline void v2_divs( v2f a, float s, v2f d )
 
 static inline void v2_mul( v2f a, v2f b, v2f d )
 {
-       d[0] = a[0]*b[0]; d[1] = a[1]*b[1];
+       d[0] = a[0]*b[0]; 
+       d[1] = a[1]*b[1];
 }
 
 static inline void v2_div( v2f a, v2f b, v2f d )
@@ -113,9 +119,16 @@ static inline void v2_div( v2f a, v2f b, v2f d )
        d[0] = a[0]/b[0]; d[1] = a[1]/b[1];
 }
 
+static inline void v2_muladd( v2f a, v2f b, v2f s, v2f d )
+{
+       d[0] = a[0]+b[0]*s[0]; 
+       d[1] = a[1]+b[1]*s[1];
+}
+
 static inline void v2_muladds( v2f a, v2f b, float s, v2f d )
 {
-       d[0] = a[0]+b[0]*s; d[1] = a[1]+b[1]*s;
+       d[0] = a[0]+b[0]*s; 
+       d[1] = a[1]+b[1]*s;
 }
 
 static inline float v2_length2( v2f a )
@@ -140,6 +153,12 @@ static inline float v2_dist( v2f a, v2f b )
        return sqrtf( v2_dist2( a, b ) );
 }
 
+static inline void v2_lerp( v2f a, v2f b, float t, v2f d )
+{
+       d[0] = a[0] + t*(b[0]-a[0]);
+       d[1] = a[1] + t*(b[1]-a[1]);
+}
+
 // Vector 3
 // ==================================================================================================================