From 0abc1ca44de64a689f5877e4b7e194c43a1ddcd8 Mon Sep 17 00:00:00 2001 From: rodri Date: Wed, 2 Oct 2024 20:46:39 +0000 Subject: shorten Shadertab prop names. add quaternion sandwich product utils. --- util.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'util.c') diff --git a/util.c b/util.c index ff76ab9..8aeaaf2 100644 --- a/util.c +++ b/util.c @@ -91,6 +91,21 @@ eqpt3(Point3 a, Point3 b) return vec3len(subpt3(a, b)) < ε2; } +Quaternion +qsandwich(Quaternion q, Quaternion p) +{ + return mulq(mulq(q, p), invq(q)); +} + +Point3 +qsandwichpt3(Quaternion q, Point3 p) +{ + Quaternion r; + + r = qsandwich(q, Quatvec(0, p)); + return Pt3(r.i, r.j, r.k, p.w); +} + void memsetf(void *dp, float v, usize len) { -- cgit v1.2.3