4 ms·
I don't have a book recommendation handy. It's "just" a combination of two neat techniques. Get books on each of those and understand them each, and you have
by wnoise 6y ago
I don't have a book recommendation handy. It's "just" a combination of two neat techniques. Get books on each of those and understand them each, and you have the combination.
GA has been well discussed here, so, the other half:
Projectivization is a fairly standard trick even for normal geometry. It's adding an additional dimension, which is in most contexts just set to 1. (Projective actually just means treating all points on a ray as equivalent; this loses the dimension you just gained
It lets rotations and translations be treated in a nearly uniform manner, and lets you do rotations around points that aren't the origin. It's used all over the place in much graphics code (usually under the name homogeneous coördinates). The last section of https://en.wikipedia.org/wiki/Homogeneous_coordinates https://en.wikipedia.org/wiki/Homogeneous_coordinates discusses this briefly.
For online resources for the combination: another commenter has recommended https://bivector.net/ https://bivector.net/ , and it looks okay, with sections specifically on 2 and 3 dimensional projective geometric algebra.
There is also the nice C++ header library klein: https://www.jeremyong.com/klein/ https://www.jeremyong.com/klein/