Stereographic representation of the 2-sphere

Hi @jrus, I couldn’t tell from your post how committed you are to using CGA. If you are mainly interested in working with circles on the sphere then CGA is probably the way to go.

But if your main intention is to do spherical geometry and trigonometry using GA then I would suggest considering using projective geometric algebra (PGA) in the form of P(\mathbb{R}_{3,0,0}^*) or P(\mathbb{R}_{3,0,0}) for this task. One neat trick in this model is that multiplication by the pseudoscalar converts a triangle into the famous “polar triangle”, for which a set of similar but not identical formulas are valid. In fact, many of the familiar formulas of spherical trigonometry can be directly derived using the geometric product. I expect the study of triangle centers would also be productive; it certainly is for the euclidean PGA P(\mathbb{R}_{2,0,1}^*).

I briefly discuss both these options in the SIGGRAPH course notes (Section 6.3) available here on bivector.net/doc.html. The dual construction appears to be preferable since then the spherical isometries are generated by reflections in planes through the origin – which agrees with the way we usually think of the isometry group of a space. (The alternative using the standard construction generates the direct isometry group via rotations of 180 degrees around lines through the origin (“half turns”); the reflections in planes have to be obtained using other techniques.)

This theme is also briefly handled in the second part of my GAME2020 lecture dealing with non-euclidean geometry using PGA. This lecture also includes a discussion of hyperbolic geometry using P(\mathbb{R}_{2,1,0}^*) or P(\mathbb{R}_{2,1,0}). This lecture will soon be available as video and slides also on bivector.net/doc.html.

I have also written some ganja.js demos for these non-euclidean plane that are part of the above slides. One feature that will probably be unfamiliar for you is that the display is not on the round sphere but is a flat plane obtained by central projection (not stereographic projection). This plane represents one hemisphere of the full sphere. That’s necessary in order for it to be considered a true noneuclidean geometry, since one of the axioms is that every pair of lines intersects in exactly one point, whereas great circles on the sphere intersect always in two. It’s not difficult to render this model as two identical round hemispheres forming a single sphere … but that’s not been done yet.