The above images are based on an experimentation with lots of math and procedural level generation for Musorqua (working title). We can create twisting, looping things using Designer Script (a subset of C-Script):
// Create the pieces:
#loop
// Increment this piece's position:
pattern_position.z -= distance_between_pieces;
pattern_orientation.pan += angle_between_pieces;
// Create the piece:
stamp(begin_catalog_number);
vec_set(piece.x, pattern_position.x);
vec_set(piece.pan, pattern_orientation.pan);
loop1+=1;
if(loop1<=pieces_to_create) { djump("loop"); }
The trick here is that creating such patterns by hand would take infinity billion hours, but by function, they only take a few seconds.