Using CGA (conformal geometric algebra) to find the circumcircle that fits three moving points…
Using PGA2D (2D Plane-based Geometric Algebra) to explore wallpaper groups. (Still making examples for this library 😆.)
Here’s an example of a motor in PGA3D creating a spiral of triangles.
A motor is a multivector that combines a rotor (specifies a 3D rotation) with a translator (specifies, naturally enough, a 3D translation). You can then apply this multivector to another to do both at the same time. Clojure's `iterate` is a pleasure here:
(take steps (iterate (fn [s] (map #(transform % motor) s)) shape))