Labyrinths and space-filling curves


A labyrinth is a single path that twists around and fills a shape.  Examples include the circular path at Chartres Cathedral in France and the rectangular El laberinto del patio by Ernst Kraft in Málaga, Spain.  The Labyrinth society has provided a website for locating a labyrinth close to you. Jo Edkins, known to many lacemakers for her online lace school, has written an excellent summary on the History of mazes and labyrinths.  Her website includes instructions for constructing several designs.  Lars Howlett, a designer of labyrinths, has created a wonderful set of design tutorials on his website.

Labyrinths appear frequently in bobbin lace patterns.  Pat Brunsdon and Michele Minguin-Debray have designs based on the labyrinth at Chartres.  Christine Mierecki and Barbara Corbett both feature a square labyrinthine layout on the cover of their Milanese lace books.  The most prolific source is Hinojosa tape lace, such as this fabulous ring by Carolina de la Guardia.  Most Hinojosa patterns are comprised of a single tape that winds around with wonderful symmetry and sensitivity to form. The tape completely fills the shape, often with an elaborate outline.

Besides finding labyrinths visually beautiful, we associate spirituality and introspection with the act of tracing their path.  As you get turned around on the convoluted journey, you lose reference to the outside world. Your focus naturally turns inward to your own purpose and meaning.  This form of meditation is very familiar to lace makers.

Space-filling curves in Math

Mathematicians are also interested in these convoluted paths.   You may recall that a line has one dimension. A solid square is a two-dimensional object and a solid cube is a three-dimensional object.  Mathematicians in the 1800s wanted to know whether it is possible to draw a line that is so convoluted that it completely fills a square.  If so, does the line have one dimension or two, or perhaps something in-between?

In 1890, Giuseppe Péano, from the University of Turin, presented the following answer:

Divide a square into nine smaller squares.  Trace a single path that visits every one of the nine squares without crossing itself as shown in Figure 1a.  We will call this “path N”.  Number the nine squares in the order they are visited by path N (see Figure 1a).

Now subdivide each of the nine squares into nine smaller squares for a 9×9 grid of 81 small squares.  Our next goal is to place a copy of path N in each small square in such a way that the paths connect to form a single line.  Start by placing a copy of path N in the bottom-left square (see Figure 1b). Next place a copy of path N in the middle-left square.  Since we want to connect the two paths together with the shortest possible line, the second N must be flipped.  The first path N ends on the right. Once flipped, the second path N starts on the right and the points we need to connect align.

Continue adding N paths, flipping as required and following the order one to nine, to complete the pattern as shown in Figure 1c.  Repeat this process a third time to get the pattern shown in Figure 1d, on a grid of 729 very small squares.


Figure 1: Creating a Péano curve: (a) First iteration, draw a basic path through 9 squares. (b) Second iteration, subdivide each square in Figure 1a into nine smaller squares. Draw a copy of path N in block one and a flipped copy in block two. (c) Repeat to complete the pattern. (d) Third iteration, subdivide each square in Figure 1c into nine smaller squares and repeat the process starting at the bottom left corner.

With each pass, the path becomes more convoluted and visits more points in the square.  If you repeat this subdivision process an infinite number of times, the journey will take you to every point in the square.  Therefore, given infinite time, you can draw a two-dimensional line!

For design purposes, the Péano curve does not have to be limited to a square space.  When curved into a circle, we end up with something similar to the labyrinth at Chartres (see work by Marie-Pascale Corcuff).


Figure 2: a) Labyrinth at Chartres, source:, b) First part of Péano curve bent around a circle.

Over the years, mathematicians have discovered additional examples of what they call “space-filling curves”, some of which are shown in Figure 3.  Each of these patterns can be made more and more detailed by a repetitive process.  In a future post, I will provide a tutorial on how to generate these fractal designs with Inkscape.


Labyrinths and space-filling curves in Torchon designs

Convoluted paths are also useful in Torchon for creating large pieces, such as shawls or scarves, using a small number of bobbins. For a rectangular Torchon piece, such as the example in Figure 4, the number of bobbins required can be reduced by half using the following technique:

  1. When designing the piece, choose a ground with 45º reflection symmetry to lie at each corner.
  2. Work the right half of the lace from the top down to the reflection line through the bottom right corner.
  3. Rotate your pillow 90º counter clockwise and continue working to the next reflection line.
  4. Rotate your pillow once more and work back to the top. Along the inside edge of this last section, sew the new work to the previous work.
torchon sewing pattern

Figure 4: An example Torchon pricking and pair diagram.  The pattern is rotated at red dashed lines. Line colours in pair diagram indicate which stitches are made before turning.  Red pinholes indicate sewings between yellow and blue sections.

If the ground uses symmetric stitches (stitches that look the same when turned 90º), the pattern will appear uniform, as if it has been worked in just one direction.  For very large pieces, you can use spirals, zigzags or a labyrinthine path to reduce the number of bobbins even further. For the pattern shown in Figure 5, I used the Hilbert space-filling curve (3rd iteration) to reduce the number of bobbins in the ground section from 64 pairs to eight pairs.

In her trilogy Discover,Explore,Master Torchon, Ulrike Voelcker describes this technique in more detail.  She provides several layouts [p. 123-20] including the top left corner of the “Wunderlich 1” pattern shown in Figure 3.  Voelcker also provides instructions [p. 117] on how to join two halves of a stitch with a nearly invisible sewing.


Figure 5: Hilbert space-filling curve as lace (high resolution image). Instructions on how to work this pattern will appear in Vuelta y Cruz/ Twist and Cross issue No. 29. On sale in August 2020.

If we only use one colour of thread, the labyrinth outline will disappear in the finished lace; only the lacemaker will know about it.  However, we can take advantage of the convoluted path and turn it into a design element by using two colours of thread: bobbins on the left side of the “tape” will hold colour A; bobbins on the right will hold colour B.  To keep colour A threads on the left,  use a turning stitch (C pin TTC) whenever a colour A pair and colour B pair meet.

The TesseLace ground used in Figure 5, was generated by my computer algorithm.  The pricking, working and thread diagrams in Figure 6 show how it is worked.  While a little more complicated than Rose ground, this TesseLace ground also has 45 degree symmetry.


Figure 6: TesseLace ground (a) pricking, (b) working diagram (green intersections worked as Twist-Cross, rose intersections worked as Cross), and (c) thread diagram.

You can play with the crosses and twists used in this ground pattern by going to GroundForge – Diagrams of bobbin lace patterns.  Follow the instructions for modifying stitches.  I will write more about this useful ground exploration tool in a future post.


In August 2020, I taught a virtual workshop on these space-filling curves and labyrinths through the Lace Museum. One of the participants, Elizabeth May, designed the following spiral piece.

Spiral design in Rose ground by Elizabeth May

Spiral design in Rose ground by Elizabeth May