As a first test of the efficacy of the new Transversion Automaton design, I set it up to carve out a simple torus. Since a torus only has two loops whose product generates the surface, it’s easy to model simply by mapping the two principle directions of the Transversion Automaton to the loops.

The Transversion Automaton consists of a central unit sphere (in grey) whose center is a point on the surface being generated and two surface coordinate (UV-coordinate) generating lines. At each step, the automaton inverts the lines through the central unit sphere to generate the UV osculating circles. These circles represent the instantaneous curvature at the surface point in the principle directions. Next, the automaton is diffused through space along both principle circles and the locations of the generating lines is adjusted to properly account for the curvature values at the next location.

Above are frame capturing the automaton’s motion around one of the cycles of the torus. The total movement through the nine frames is half a rotation (180 degrees) where the curvature of the direction given by the red line changes from 1 (spherical) on the outside to -1 (hyperbolic) on the inside. Notice that in frame 5, the circle generated by inverting the red line into the central unit sphere is actually a line, or a circle of infinite radius. This is because at the top of the torus, the lateral curvature is zero or Euclidean, which makes sense since for the curvature to change form 1 to -1 it has to pass through 0.

These images show different points of view on the set of circles generated in one cycle of the torus. Notice that there are two lines indicating the two locations of Euclidean curvature. These images were generated simply by accumulating all of the circles and drawing them together.

Overall, this iteration of the Transversion Automaton is much simpler to control and move through space. The logic of its structure is now super clear. One of the aspects I appreciate most is how its internal structure dictates its own transformation. In other words, it’s a self-modifying spatial automaton. All it does is read off a couple of curvature values and it’s able to move itself and adjust its relative weights accordingly. The next step is to figure out how to get the Transversion Automaton to operate in a panelizing mode where it traces out surface patches instead of entire cycles. This is the only way it will be able to generate more complex surfaces.