Monday, March 5, 2018

Growing tensegrity surfaces

Describing surfaces with Hamilton circuits in trivalent maps gives a natural way to 'grow' them, i.e., produce a complicated surface map by a sequence of local changes applied to a simplest surface map. As changes accumulate, the Hamilton circuit lengthens and evolves by a sequence of insertions (ud or np) and shuffles of 'up' letters past 'down' letters.

Tensegrity motivates building by growing, because partially completed tensegrity structures can be un-sturdy (and confusing) in the extreme. By growing from a simpler tensegrity to a more complex tensegrity, the structure can be sturdy at every intermediate stage—and even during the edits, if there is a jig providing temporary bracing around the local region that is being edited.

The three tensegrity surface patterns identified by Anthony Pugh—diamond, zig-zag, and circuit—can be described by triangular truchet tiles, and thus can be associated with any triangulated surface or its dual trivalent map. If that trivalent map has a Hamilton circuit, then the surface can be grown.

A pair of triangular truchet tiles for the diamond tensegrity pattern. 

A pair of triangular truchet tiles for the zig-zag tensegrity pattern. (This pattern has the advantage that only one strut and one tendon cross a triangle side, minimizing the reattachments needed to perform a given edit.)

A pair of triangular truchet tiles for the circuit tensegrity pattern. (The circuit pattern can be seen as the zig-zag pattern with the 'non-triangle' tendons shortened to zero length.)

In the rare cases where a trivalent map lacks a Hamilton circuit, or the more common cases where such a circuit is difficult to find, small surgeries can create one [Gopi and Eppstein], or brute-force refinement via the map operation Bevel can create an immense number of Hamilton circuits (one for each spanning tree in the original map.)

The map operation Bevel has been applied to the dual of the rendered triangulation. The new trivalent map has a  Hamiltonian circuit for each spanning tree in the underlying trivalent map. 

A suitable notation for surface growth: start at the root of the Hamilton circuit denoted by a vertical bar '|' . Write 'u' for an insertion of 'ud' or 'n' for an insertion of 'np'. Write a period, '.', to represent each letter in the undip word that is to be skipped over, and write 's' to represent shuffling the letters on the left and right of the cursor. (The cursor always lies in between two letters in the undip word.) The bar, '|', makes a repeat appearance each time an orbit of the Hamilton circuit is completed. The growth description is of course the same for the three tensegrity patterns since the patterns only change the decoration on the triangles.

For completeness—enabling things to shrink as well as grow—let 'x' denote pair deletion when the cursor is straddled by either ud or np.

Growing triangular envelopes
|u = ud
|n = np

Growing digonal prisms
|uu = udud
|nn = npnp
|u|.u = uudd
|n|.n = nnpp

Growing tetrahedra
|un|..s = undp
|nu|..s = nupd

No comments: