Some plane-filling curves

after Peitgen, "Folding paper", Talk at VWO  2000, RUG

Ivan Cnop
Vrije universiteit Brussel
icnop@vub.ac.be

Folding a strip of paper

Define plus and minus

In the following 1 denotes a left turn and  -1 denotes a right turn.Repeating left fold means that in the middle we have a left fold between the original situation and its converse:

f[0] = {1};
f[n_] := Flatten[{f[n - 1], 1, -Reverse[f[n - 1]]}]

Table[f[i], {i, 5}] // TableForm

Make orthogonal directions list

directions[n_] := teta FoldList[Plus, 0, f[n]]

Use complex directions and give some value to the angle teta.

teta = Pi/2 // N; 
    ListPlot[directions[7], PlotJoined -> True]

pts = 
        FoldList[Plus, 0, Chop[ .1 E^(I directions[14])]];

ListPlot[Transpose[{Re[pts], Im[pts]}], PlotJoined -> True, 
      AspectRatio -> Automatic, Axes -> None]

Some values near π/2

1.62

teta = 1.62 // N;

pts = 
        FoldList[Plus, 0, Chop[ .1 E^(I directions[14])]];

ListPlot[Transpose[{Re[pts], Im[pts]}], PlotJoined -> True, 
      AspectRatio -> Automatic, Axes -> None]

1.75

teta = 1.75;

pts = 
        FoldList[Plus, 0, Chop[ .1 E^(I directions[14])]];

ListPlot[Transpose[{Re[pts], Im[pts]}], PlotJoined -> True, 
      AspectRatio -> Automatic, Axes -> None]

1.4

teta = 1.4;

pts = 
        FoldList[Plus, 0, Chop[ .1 E^(I directions[14])]];

ListPlot[Transpose[{Re[pts], Im[pts]}], PlotJoined -> True, 
      AspectRatio -> Automatic, Axes -> None]

1.5

teta = 1.5;

pts = 
        FoldList[Plus, 0, Chop[ .1 E^(I directions[14])]];

ListPlot[Transpose[{Re[pts], Im[pts]}], PlotJoined -> True, 
      AspectRatio -> Automatic, Axes -> None]

Alphabet representation

In the following words  L  denotes a left turn and  R  denotes a right turn.

s[0] = "L";
\(s[n_] := 
      s[n - 1] <> "L" <> \((StringReplace[
            StringReverse[
              s[n - 1]], {"L" -> "R", "R" -> "L"}])\)\)

s[2]

s[4]

Table[s[i], {i, 7}] // TableForm

Scroll to the right to convince yourself ...