Ray Tracing In Mathematical Spaces

100 Views Asked by At

I really enjoyed the Not Knot video, but I don't fully understand the mathematics which is going on there.

They are animating the space of the complement of the Borromean rings, but you can't just animate a topological space. What is the least amount of structure needed so that you can do ray tracing? I guess you need geodesics and angles, so a Riemann manifold should suffice. But can one do also with an affine connection? You would have geodesics I think, but I don't know about angles, which you would need to map points of the viewport to geodesics.

And if so, what exactly is the process of turning this subset of $\mathbf{R}^3$ (the complement of the Borromean rings) into an affine connection? Can you define this for any open subset?

1

There are 1 best solutions below

0
On BEST ANSWER

You have to be a bit careful with stating the question since you can do raytracing in the complement of a knot in $\mathbb{R}^3$ just fine in a trivial way (it's $\mathbb{R}^3$, so use the euclidean metric). The point here is that the complement of the borromean rings happen to have a complete constant-curvature hyperbolic structure, and the video is showing what it looks like from within this space with this structure.

The video shows how you can construct this hyperbolic structure using a dodecahedron inside hyperbolic space. For 3-manifolds with hyperbolic structures, you can also triangulate them with tetrahedra and solve certain equations that guarantee you have a hyperbolic structure, by virtue of each tetrahedron being a tetrahedron in hyperbolic space, which are glued together in a way that give a hyperbolic structure for the 3-manifold. With such tetrahedra, you can do raytracing by doing raytracing with a hyperbolic metric inside these tetrahedra, and then whenever you hit the face of a tetrahedron you continue from the other tetrahedron glued along this face. This is how I understand SnapPy's inside view to work.

Another way to understand this is that hyperbolic 3-manifolds are quotients of hyperbolic space by a discrete subgroup of the isometry group, so you can do raytracing by lifting to the universal cover (hyperbolic 3-space). The triangulation is in some sense a way to represent such an isometry group, but you can work with the group directly.

For other spaces, you can hope that the space has one of the eight model geometries for the geometrization conjecture and use similar techniques. People like Henry Segerman have been working on doing raytracing (or at least accurate renderings) for each of the model geometries. For non-prime spaces or spaces with non-trivial JSJ decompositions, then my understanding is that there's not a unique way to raytrace in the complement of a knot.