# Screenshots of the

Programming Examples

These are screenshots of the programming examples of Chapter 1 through 16. Most screenshots have been reduced in size to fit on the page. Click to see them in full resolution.

*do*behave the same way under transformation as regular vectors. This example illustrates this concept by allowing the user to scale a mesh non-uniformly, and computing the normal vector the right way (using 2-blades, green), and the wrong way (using vectors, red).

Chapter 10, Example 3: This example shows how to compute the external calibration of cameras. The external calibration is the relative position and orientation of cameras. The calibration is performed by waving a single marker through the volume of space visible to the cameras. The cameras register the position of the marker on each frame, and use this to find a rough initial estimate of their position and orientation. A geometric algebra based algorithm is then used to optimize this estimate.

The four cameras are shown as pyramids with a line extending to indicate their viewing direction. The marker measurements are shown as black dots with a line connecting them.

*homogeneous model*(introduced in Chapter 11) it is easy to span lines and planes using points, and to compute intersections of lines and planes. Spanning is done using the outer product, and intersecting is done using the

*meet*. The same equations can be used regardless of the type of primitives (i.e., point, lines or planes). This example allows you to create points, lines and planes, and computes their intersections interactively.

*conformal model*, points lie on a

*n*-D paraboloid (the

*horosphere*). Computing a convex hull around the point on this horosphere results in the Voronoi diagram of those points. This is a well-known trick from computational geometry, embedded in the conformal model. The example allows you to move the red points around and view the real-time update of the Voronoi diagram or Delaunay triangulation.

*tangent blades*(such as `rays').

*rotors*. These rotors can be interpolated with ease. This example illustrates this by using a `scaled screw' by repeatedly transforming a circle. This results in a seashell-like figure show here.