
Technical
Raymarching Thurston Geometries.
This project is joint work by Remi Coulon, Sabetta Matsumoto, Henry Segerman, and Steve Trettel to render accurate images of the eight Thurston geometries and their quotients. We are working hard to make a version of this software accessible to anyone who wants to explore, and encourage you to check out the GitHub repository and our papers on the topic (both technical and expository) for much more information. This website hosts various demonstrations we have created along the way, as well as tutorials and documentation for the code. Enjoy!
Raymarching Thurston Geometries.
Below there are many grids of images coming from our simulations - each image is actually a link to the code which produced it, which runs live in your browser. To access the simulation, simply click the picture. Many utilize keyboard the following keyboard controls. For orientation: the keys Q,E to rotate the screen about its center and A,D and W,S to rotate your field of view. For movement: the arrow keys move your position into/out of the screen as well as left/right, and the keys '/ to move up and down. If the simulation is running slowly on your screen, make your browser window smaller. These images are being produced by simulating light rays in curved spaces for every pixel, so a smaller screen = less pixels = faster performance.
A similar scene (several balls of different colors) in eight compact manifolds, each equipped with one of the eight different Thurston geometries.
A collection of eight spheres in a Euclidean 3-torus.
A collection of twelve spheres in the Poincare Homology Sphere.
A collection of twelve spheres in Seifert Weber Dodecahedral Space.
A collection of four spheres in the tivial circle bundle over a hyperbolic orbifold torus with cone angle pi.
A collection of 20 spheres in the Hopf manifold S2xS1, arranged on the verticies of an icosahedron in the S2 factor.
A collection of four spheres in a dehn twist torus bundle with monodromy ((1,1),(0,1))
A collection of four spheres in the unit tangent bundle to a hyperbolic orbifold torus with cone angle pi.
A collection of four spheres in an Anosov torus bundle with monodromy ((2,1),(1,1)).
The images we compute depict an 'inside view' of the manifold, by tracing light rays along geodesics. To help appreciate and interperet these images, here are a couple of visualizations introducing this idea.
The shortest lines on a surface bend in the presence of curvature. If you were a 2D creature living on the surface, how would the world look if these were the trajectories of light?
Geodesics in R3 under an asymtotically flat metric with bump at the origin. How would distant objects appear to an observer in this metric?
An intrinsic view of 3-d space, tracing along the geodesics of the metric in the previous example to a spherical photograph set at "spatial infinity".
The geodesics in Nil, a non-isotropic homogeneous metric on $\mathbb{R}^3$. Generic geodesics spiral around the $z$-axis, in these coordinates.
Geodesics in Nil and the earth. Can you predict what you should see, if you stood at the origin of these geodesics and looked towards the earth?
An intrinsic view, tracing along the geodesics of the Nil metric, in the same set up as the previous (extrinsic) example.
Another factor complicating the inside view of a manifold is its topology: light rays traveling along homotopically distinct paths between an observer and object can cause t hat object to be seen in multiple directions.
The geodesics between two generic points on a cylinder are parameterized by pi1. This makes an inhabitant of this geometry see infinitely many copies of every object.
We may experience a similar phenomena in 3D by raytracing in the space $\mathbb{R}^2\times\mathbb{S}^1$ with a single Earth moon system. We see an a discrete line's worth of images, corresponding to $\pi_1(\mathbb{R}^2\times\mathbb{S}^1)=\mathbb{Z}$.
A simple example of this phenomenon in a compact manifold is visible by raytracing inside of a flat 3-dimensional torus containing a single Earth/Moon system. Here we see images of the earth along the integer lattice, corresponding to $\pi_1(T^3)=\mathbb{Z}^3$.
The issue of lighting scenes correctly is particularly subtle in curved spaae. Not only can light arrive along many geodesics connecting an object to the light source, but the intensity of light recieved depends on the nature of the exponential map near the given trajectory (more precisely, on the collection of Jacobi fields along that geodesic). Below we illustrate this by showing the correct light intensity in Nil geometry across a couple of different scenes, each lit by four light sources of different colors.
Correct lighting of the XY plane by four light sources of an adjustable height above it.
A line of spheres in Nil geometry parallel to the z-axis, lit by four lights as above. This makes visible the periodic nature of infinite intensity arising from the reconvergence of geodesics.
The same lighting scheme of four light sources, this time lighting the interior of a tiling of Nil to give a better 3-dimensional sense of the resulting light distribution.
Finally, while the discussion above all assumes the manifold of interest already comes equipped with a homogeneous metric, the following couple simulations introduce the idea of putting such a metric on a space.
The flat metric on the punctured disk is incomplete, as geodesics reaching the puncture leave the space in finite time. This metric can be deformed into a complete and homogeneous metric of finite area, 'geometrizing' the punctured disk as the pseudosphere.
The Hopf link complement in $\mathbb{S}^3$ begins with an incomplete spherical metric. As this space is diffeomorphic to $T^2\times\mathbb{R}$, this can be replaced with a complete, (infinite volume) Euclidean metric. This simulation shows the geodesics of this metric spiraling, but never reaching the link componennts.
An intrinsic look at the Hopf link complement, tracing along the geodesics of $T^2\times\mathbb{R}$. A ray of light initially aimed upwards eventually impacts the normal neighborhood of one link component, and any ray directed downwards eventually reaches the other.
This is a link of two unknots in the 3-sphere whose complement is geometrized with a complete, finite volume hyperbolic metric.
This is an intrinsic view tracing along geodesics of the complete hyperbolic metric on the Whitehead link complement. You can see the boundary of the normal neighborhood of the link components appearing like distant horospheres.
We are working to make this project user friendly by providing a means of building a scene similar to ThreeJS. We have built a number of basic primitive objects (spheres, planes, cylinders, etc) and compact manifolds for each geometry, and to build your own scene using these amounts to writing a scene description such as below, which renders the following example.
This executes the code above to provide an inside view of the 3-torus with a tiling built from the complement of a sphere.
Below are links to the documentation for the code. This includes tutorials for getting a scene up and running, or going further and adding your own objects / geometries / groups, as well as general documentation for the javascript and glsl portions of the project.
This tutorial explains how to build a simple scene with the Thurston module.
The Main Page for the JS documentation. Everrything is available from the dropdown menu at the top.
The Main Page for the shader documentation.
We will find a better way to do this so the examples are visible on the main screen. But for now - all the examples written in the new code are listed in the following link.
The homepage for new examples.
Any fun examples in Euclidean geometry will go here eventually, but you already know what $\mathbb{E}^3$ is like, and the 3-torus is already above, so for now lets move on to less familiar spaces!
The three dimensional 'surface' of a four dimensional ball is an isotropic geometry of constant positive curvature. Geodesics initially diverge sublinearly, before reconverging at the antipode to their source. The area of geodesic spheres grows with the square of the cosine of its radius.
Just the Eahrth/Moon system in the 3-sphere. Try to move yourself to the Earth's antipode.
The Earth in the poincare homology sphere, appearing as a regular configuration of 120 earths in spaace.
An intrinsic view of some fibers of the Hopf map.
Hyperbolic space is isotropic, with constant curvature negative 1. Geodesics diverge exponentially, and the surface area of geodesic spheres is exponential in their radius. There is an extremely rich collection of hyperbolic 3-manifolds, which remian an active topic in research.
A tiling of hyperbolic space by cubes arising from a cocompact coxeter group.
Neighborhoods of the Borromean rings appear as horospheres in the intrinsic view.
The 1-skeleton of a fundamental domain appears as a tiling by regular dodecahedra.
The product of a sphere and a line is not isotropic, and contains totally geodesic spheres and euclidean cylinders. The rate of geodesic divergence depends on their initial starting direction. Geodesic spheres grow sub-quadratically in area (and are immersed for large radii).
A single copy of the Earth/Moon System in $\mathbb{S}^2\times\mathbb{E}$ can be seen in infinitely many directions. Correct lighting along the first several shortest geodesics, from light source directly above the earth along the R factor.
Compare this scene of an Earth/Moon system in $\mathbb{S}^2\times\mathbb{S}^1$ with the one above: the infinitely many images come in two types: those caused by geometry (as above) and those casued by topology.
A tiling of S2xS1 built from the symmetries of a regular dodecahedron.
A product of the hyperbolic plane and a line, this geometry is not isotropic, and contains both totally geodesic hyperbolic and euclidean planes. The rate of geodesic divergence depends on their initial starting direction, and spheres grow (coarsely) exponentially with radius.
A tiling of $\mathbb{H}^2\times\mathbb{E}$ built from a hyperbolic cone torus with cone angle $\pi$, cross a circle.
The Earth moon system in the same orbifold torus cross $\mathbb{S}^1$ depicted in the previous.
The foliation of hyperbolic planes in $\mathbb{H}^2\times\mathbb{E}$ , with a tiling by squares marked by colors, and holes punched in them so its possible to see through to further layers.
More Stuff.
Nil is a homogeneous geometry built from the 3-dimensional Heisenberg group. It is anisotropic, with a single axis of rotational symmetry. Generic geodesics in Nil spiral around this symmetry axis.
An infinite number of earths spaced evenly along the $z$-axis allows one to see the multitude of ring shaped images formed. Compare with the previous simulation of a single earth in Nil.
A lattice of earths, with symmetry the integer Heisenberg group (equivalently, a single earth in the torus bundle for a dehn twist with monodromy $(x,y)\mapsto(x+y,y)$ on $\pi_1$ )
A vertical plane in Nil, lit by four light sources. Try to travel far from the lgihts and reach a location where their brightness increases without bound..
This geometry is built from the unit tangent bundle to the hyperbolic plane. Due to the negative curvature of $\mathbb{H}^2$ traversing a loop in this plane causes additional vertical motion- corresponding to holonomy around the loop.
Vertical planes (the preimage of a geodesic in the hyperbolic plane) are non-geodesically embedded and Euclidean.
The homogeneous geometry Sol is built from a three dimensional (solvable) Lie group. It is the least symmetric three dimensional geometry, with no continuous symmetries fixing a point. Sol contains two hyperbolic planes through each point. Away from these, geodesics come in two families of spirals about orthogonal axes.
Horizontal planes (z= constant in coordinates) are non-geodesically embedded Euclidean planes. Much like hyperboloids of one sheet in Eulcidean space, they are doubly ruled by the families of geodesics parallel to x=+-y
Through each point of Sol there passes two geodesically embedded copies of the hyperbolic plane, which meet orthogonally along a geodesic. In coordinates, these are the planes of constant x and y respectively. Vertical lines in these planes give geodesics sharing a common point at infinity, and horizontal lines the corresponding orthogonal family of horocycles.