projects
/
vg.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3b841cc
)
angle measurements
author
hgn
<hgodden00@gmail.com>
Thu, 2 Nov 2023 23:07:23 +0000
(23:07 +0000)
committer
hgn
<hgodden00@gmail.com>
Thu, 2 Nov 2023 23:07:23 +0000
(23:07 +0000)
vg_m.h
patch
|
blob
|
history
diff --git
a/vg_m.h
b/vg_m.h
index 4fe4590f944cae4d614e8577ea532998d49e82fa..abd450960be984ba39ff0f5057bbad4225bd6684 100644
(file)
--- a/
vg_m.h
+++ b/
vg_m.h
@@
-107,6
+107,15
@@
static inline f32 vg_rad( f32 deg )
return deg * VG_PIf / 180.0f;
}
return deg * VG_PIf / 180.0f;
}
+/* angle to reach b from a */
+static f32 vg_angle_diff( f32 a, f32 b ){
+ f32 d = fmod(b,VG_TAUf)-fmodf(a,VG_TAUf);
+ if( fabsf(d) > VG_PIf )
+ d = -vg_signf(d) * (VG_TAUf - fabsf(d));
+
+ return d;
+}
+
/*
* quantize float to bit count
*/
/*
* quantize float to bit count
*/
@@
-690,6
+699,10
@@
static void q_mulv( v4f q, v3f v, v3f d )
v3_add( v1, v2, d );
}
v3_add( v1, v2, d );
}
+static f32 q_dist( v4f q0, v3f q1 ){
+ return acosf( 2.0f * v4_dot(q0,q1) -1.0f );
+}
+
/*
* -----------------------------------------------------------------------------
* Section 4.a 2x2 matrices
/*
* -----------------------------------------------------------------------------
* Section 4.a 2x2 matrices