Geometric algebra anyone?

I’ve been trying to learn about GA and I thought maybe someone in the Panda community has made use of it in a project, and could share their experience.

Meanwhile if you don’t know what it is, and you are doing computer graphics work (like everyone on this list :grinning:), https://bivector.net/ has a lot of useful resources and is a good place to start.

If you mean something like representing Minkowski 3+1 spacetime in Panda3D, I have written some programs of this kind. Spacetime algebra could work quite well in Panda, I believe. As for higher-dimensional representations in GA, I’m not sure.

I’m talking about very basic operations like translation or rotation in 2D or 3D. Not quite ready to tackl Minkowksi 3+1 spacetime, lol.

Did you use an existing library to bring in the GA operations or did you build it from the ground up ?

I’m going to try and figure it out and then hopefully write some simple demos in Panda3D to help me understand how you actually make use of it

On the above site there is a video with an example that converts the gluLookAt code to a GA formulation. There is a substantial reduction in the code, and, IF you understand the GA operations used, it’s easier to understand.

Ah, I believe there are a number of Panda3D functions/classes that handle those sorts of operations – like get_pos(), set_pos(), get_hpr(), set_hpr(), get_quat(), set_quat(), and so on.

Then, there are Intervals Intervals — Panda3D Manual

Python in all its featurefulness is supported in Panda3D, so you could probably use standard mathematics libraries as well.

sure, i had assumed there were library calls for that stuff.

I was talking about implementing them using GA just to understand exactly how GA works in practice, since, as you might expect, all the “tutorials” are about GA in a mathematical sense and the actual use of GA is left as “an exercise for the reader”, LOL.