Agnes Scott College
Larry Riddle, Agnes Scott College

Heighway Dragon Boundary

The boundary of the Heighway dragon is the union of the following 4 self-similar pieces. The last three pieces are scaled and rotated copies of the first (red) piece.

upperleft lowerleft lowerright upperright

 
 

Put them together by clicking on the buttons to the left in sequence

Image4-0

To construct the boundary, start with the following dotted figure (Level 0).

boundaryLevel0   boundaryLevel0withDragon
Level 0

Divide the Level 0 boundary into four sets of segments (as shown in color in the figure above) and construct red, blue, orange, and green motifs along these pairs of segments to get Level 1 as shown below.

boundaryLevel1
Level 1

Notice that the four motifs are the same except for scale and how they are rotated. In addition, each motif consists of 3 self-similar parts. For example, the red motif consists of the following three parts.

redmotif

Now iterate this construction by replacing each of the three parts by copies of that color's motif. Here is Level 2 and Level 3. The dotted lines show the previous level.

boundaryLevel2
Level 2

boundaryLevel3
Level 3


Boundary
Animation
Repeat ad infinitum to construct the entire boundary around the Heighway dragon. Try the animation to see the convergence to each of the four parts of the boundary.

Iterated
Function
System

To generate the basic motif for the four parts of the boundary as shown above in Level 1 requires three functions for each motif. Each motif will involve the same scaling/rotation matrices. The only difference will be the translations.

Red Boundary:

\({R_1}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} {1/2} & { - 1/2} \\ {1/2} & {1/2} \\ \end{array}} \right]{\bf{x}} \)
 
   scale by \(\frac{1}{\sqrt 2}\), rotate by 45°
 
\({R_2}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { - 1/4} & { - 1/4} \\ {1/4} & { -1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ 1/2 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by 135°
 
\({R_3}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { 1/4} & { 1/4} \\ {-1/4} & { 1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ 1/2 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by −45°
 

Blue Boundary:

\({B_1}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} {1/2} & { - 1/2} \\ {1/2} & {1/2} \\ \end{array}} \right]{\bf{x}} \)
 
   scale by \(\frac{1}{\sqrt 2}\), rotate by 45°
 
\({B_2}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { - 1/4} & { - 1/4} \\ {1/4} & { - 1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ 0 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by 135°
 
\({B_3}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { 1/4} & {1/4} \\ {-1/4} & { 1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ 0 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by −45°
 

Orange Boundary:

\({O_1}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} {1/2} & { - 1/2} \\ {1/2} & {1/2} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ -1/2 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{\sqrt 2}\), rotate by 45°
 
\({O_2}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { - 1/4} & { - 1/4} \\ {1/4} & { - 1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1 \\ -1/2 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by 135°
 
\({O_3}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { 1/4} & {1/4} \\ {-1/4} & { 1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ 0 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by −45°
 

Green Boundary:

\({G_1}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} {1/2} & { - 1/2} \\ {1/2} & {1/2} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ -1/2 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{\sqrt 2}\), rotate by 45°
 
\({G_2}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { - 1/4} & { - 1/4} \\ {1/4} & { - 1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1 \\ 0 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by 135°
 
\({G_3}({\bf{x}}) = \left[ {\begin{array}{*{20}{c}} { 1/4} & {1/4} \\ {-1/4} & { 1/4} \\ \end{array}} \right]{\bf{x}} + \left[ {\begin{array}{*{20}{c}} 1/2 \\ 1/2 \\ \end{array}} \right]\)
 
   scale by \(\frac{1}{2 \sqrt 2}\), rotate by −45°
 

Similarity
Dimension

The boundary of the Heighway dragon consists of 4 parts, each of which is self-similar with 2 non-overlapping pieces scaled by \(\frac{1}{2 \sqrt 2}\) and one piece scaled by \(\frac{1}{ \sqrt 2}\). According to Moran's equation, the similarity dimension d must satisfy \[2{\left( {\frac{1}{{2\sqrt 2 }}} \right)^d} + {\left( {\frac{1}{{\sqrt 2 }}} \right)^d} = 1\] By letting \(x = {\left( {\frac{1}{{\sqrt 2 }}} \right)^d}\) we can rewrite this equation as \[2{x^3} + x - 1 = 0\]

which has the solution

\[x = \frac{1}{6}{\left( {54 + 6\sqrt {87} } \right)^{1/3}} - \frac{1}{{{{\left( {54 + 6\sqrt {87} } \right)}^{1/3}}}}\]

The dimension of the boundary is therefore

\[d = - \frac{{\ln x}}{{\ln \sqrt 2 }} = - \frac{{\ln \left( {\frac{1}{6}{{\left( {54 + 6\sqrt {87} } \right)}^{1/3}} - \frac{1}{{{{\left( {54 + 6\sqrt {87} } \right)}^{1/3}}}}} \right)}}{{\ln \sqrt 2 }} \approx 1.523627\]

Special
Properties

The construction of the boundary as described above gives another way to calculate the area of the Heighway dragon. Suppose we start with a figure like Level 0 but for which the length of the bold segment (representing the initial segment for the Heighway dragon) is of length b.

AreaLevel0

Let a be the length of one of the short sides of Level 0 for the construction of the boundary. Then b2 = a2 + (3a)2= 10a2. The area inside the Level 0 boundary is 4a2.

Now consider what happens with the area inside the Level 1 boundary as shown below.

AreaLevel1

Each of the numbered regions contains the same area inside the boundary and outside the boundary of Level 0. Thus in the iteration from Level 0 to Level 1, the area has increased only by the amount of the shaded region, which is (1/2)a2. The same thing will happen in the iteration from Level 1 to Level 2, except the new shaded region would have a side that has been scaled by \(1/\sqrt 2\). Continuing the iteration and adding the additional area at each new level gives the total area inside the boundary to be

\[\begin{array}{l} 4{a^2} + \frac{1}{2}{a^2} + \frac{1}{2}{\left( {\frac{a}{{\sqrt 2 }}} \right)^2} + \frac{1}{2}{\left( {\frac{a}{{{{\sqrt 2 }^2}}}} \right)^2} + \frac{1}{2}{\left( {\frac{a}{{{{\sqrt 2 }^3}}}} \right)^2} + \ldots \\ \\ = 4{a^2} + \frac{1}{2}{a^2}\left( {1 + \frac{1}{2} + \frac{1}{4} + \frac{1}{8} + \ldots } \right) \\ \\ = 4{a^2} + \frac{1}{2}{a^2}\left( {\frac{1}{{1 - \frac{1}{2}}}} \right) = 5{a^2} \\ \end{array}\]

Since a2 = b2/10, we get that the area of the Heighway dragon is b2/2. This agrees with the previous area calculation where b = 1.

 


References

  1. Angle Chang and Tianrong Zhang. "The Fractal Geometry of the Boundary of Dragon Curves," J. Recreational Mathematics, Vol. 30, No. 1 (1999-2000), 9-22. [Available at http://poignance.coiraweb.com/math/Fractals/Dragon/Bound.html]
  2. Edgar, Gerald A. Measure, Topology, and Fractal Geometry, Springer-Verlag, 1990.