{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The idea of Geometric Algebra in just 30 minutes.

  • Not just a new way to shuffle coordinates.
  • Not just rewriting without cross product.
  • Not just the quotient of the tensor algebra with some ideal.
  • Not just the extension of vector algebra to multivectors.

+

+

scalar

vector

bivector

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The idea of Geometric Algebra in just 30 mins.

  • not just a new way to shuffle coordinates.
  • not just the quotient of the tensor algebra with some ideal.
  • not just the extension of vector algebra to multivectors.

+

+

scalar

vector

bivector

  1. Start from a simple example and Vector Algebra solution.
  2. Inspect that method and highlight some issues.
  3. Introduce the Geometric Algebra approach.
  4. Inspect that method and explore some of the consequences.

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The idea of Geometric Algebra in just 30 mins.

  1. Start from a simple example and Vector Algebra solution
  2. Inspect that method and highlight some issues
  3. Introduce the Geometric Algebra approach
  4. Inspect that method and explore some of the consequences

A simple example ..

\(d_i = \big ( \frac 1 f - \frac 1 {d_0} \big )^{-1}\qquad h_i=-\frac {d_i} {d_0} h_0\)

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The idea of Geometric Algebra in just 30 mins.

  1. Start from a simple example and Vector Algebra solution
  2. Inspect that method and highlight some issues
  3. Introduce the Geometric Algebra approach
  4. Inspect that method and explore some of the consequences

\(d_i = \big ( \frac 1 f - \frac 1 {d_0} \big )^{-1}\qquad h_i=-\frac {d_i} {d_0} h_0\)

The paraxial approximation of the thin lens equation

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

\(d_i = \big ( \frac 1 f - \frac 1 {d_0} \big )^{-1}\qquad h_i=-\frac {d_i} {d_0} h_0\)

The paraxial approximation of the thin lens equation

\(\vec a = \overline {\vec c - \vec f}\)

\(\vec b= \vec c - \vec p\)

\(d_0 = \vec a \cdot \vec b\)

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

\(d_i = \big ( \frac 1 f - \frac 1 {d_0} \big )^{-1}\qquad h_i=-\frac {d_i} {d_0} h_0\)

The paraxial approximation of the thin lens equation

\((\overline {\vec c - \vec f}) \, \cdot\)

\((\vec c - \vec p)\)

\(d_0 = \)

\(h_0 = (\overline{\vec c - \vec g} )\,\cdot\,(\vec c - \vec p) \)

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The Geometry of Arrows and its Algebra.

Given the green arrows, all operations are well defined.

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The Geometry of Arrows and its Algebra.

Given the green arrows, all operations are well defined.

Given the green points, no operation makes geometric sense.

Euclid's first postulate : two points determine a single line.

(and nothing else!)

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The Geometry of Arrows and its Algebra.

For any operation \(\circ\) between two points to be geometric, its result must be in the 1D line they span!

(that's addition, subtraction, all products ...)

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The Geometry of Arrows and its Algebra.

Lines and Planes are even more problematic, and can not trivially be mapped to arrows or multi-arrows.

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

The Geometry of Arrows and its Algebra.

  • Vector Algebra is a perfect match for Arrow Geometry
  • Less ideal for points/lines/planes

How can we improve this?

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

Homogeneous/Projective Coordinates

  • Fundamental building block of CG
  • Projective arrows solve addition of points
  • Dot and Cross product not in subspace
  • Projective multiarrows for lines/planes..
  • Addition/Subtraction become geometric
  • Typical first GA approach
  1. Addition and Subtraction regain geometric meaning
  2. Results are independent of origin, but visualisation is not!
  3. A dimension of intuition is sacrificed 

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

For the geometry of points, lines, planes ..

  • All operations work in the subspace of their arguments
  • Do not sacrifice dimension for visualisation
  • Represent all elements AND transformations

Instead of an algebra of arrows,

we use an algebra of reflections.

k-reflections

Geometric Gauges

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

k-reflections

Geometric Gauges

Elements = Transformations = k-Reflections

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

k-reflections

Geometric Gauges

Each k-reflection (with k>1) can be gauged without changing the result.

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

k-reflections

Geometric Gauges

Each k-reflection (with k>1) can be gauged without changing the result.

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

Gauges tell us how reflections combine!

Cartan-Dieudonné

Every orthogonal transformation in an n-dimensional embedding space
is composed from at most n reflections 

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

This flavor of GA is called PGA.

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

\(ab\)       Geometric Product composes reflections

\(a\wedge b\)   Outer Product Intersects elements

\(a\vee b\)   Regressive Product joins elements

\(a\cdot b\)     Dot Product rejects elements

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

Formula can be read left to right, no information is hidden, no scalar ratios or coefficient calculations needed.

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

  • \( p \vee f \) = line through p and f
  • \((p \vee f) \wedge L\) = intersection with lens 
  • \((p \vee f) \wedge L \cdot L \) =  line orthogonal to L
  • \((p \vee f) \wedge L \cdot L  \wedge (p \vee c)\) = intersect with line through center

\(\vee\) = join         \(\wedge\) = meet           \(\bullet\) = dot

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

  • Same formula in 3D!
  • Same formula to calculate the image of a line! (just make \(p\) a line!)

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

  • Same formula for a cylindrical lens! (just make the focal and center a line!)

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

\(d_i = \big ( \frac 1 f - \frac 1 {d_0} \big )^{-1}\qquad h_i=-\frac {d_i} {d_0} h_0\)

\(h_0 = (\overline{\vec c - \vec g} )\,\cdot\,(\vec c - \vec p) \)

\(d_0 = (\overline{\vec c - \vec f} )\,\cdot\,(\vec c - \vec p) \)

\(i = -d_i\overline{(\vec c - \vec f )}  - h_i \overline{(\vec c - \vec g)} + \vec c \)

no need for :

  • coordinates
  • origin
  • coefficients
  • arrows
  • 'solving'

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

{GAGA}

Graphics Applications of Geometric Algebra

Steven De Keninck

Thank you!

For more information, libs, tools and docs ...

https://bivector.net

CGI2022

By Steven De Keninck

CGI2022

Keynote talk at ENGAGE / CGI2022

  • 411