The Dragon of Eve
A self-avoiding plane-filling fractal curve
by Jeffrey Ventrella

I discovered the Dragon of Eve while living in the basement of the house of Eve Peters, in the early 1980's. Eve was my mother's art teacher when my mother was young. I had just started working on my Master's degree at Syracuse University. My thesis was on fractal art. I had already spent about a year with Mandelbrot's book, studying techniques for creating plane-filling fractal curves.

One technique is called "edge replacement". It is analogous to the more general technique of L-systems. The technique I have devised encodes the geometrical operation of edge replacement using complex integer math.

The Koch curve provides an easy and familiar example of how edge replacement works. The generator is copied four times, with each copy scaled to one-third size, making four baby generators. These are placed onto the line segments (edges) of the original generator, thus causing the generator (the mother) to give birth to four bumps that look like small versions of the original bump.

Repeating this process results in a progression of bumps on bumps.

Now, look at the example at right for how the Dragon of Eve is created: it requires a "flip" in one of the steps (the last baby is flipped), causing the sharp baby bump to aim downward instead of upward. Notice how each flipped baby "stays out of the way" as the curve grows more bumps.

Every generation of mother bumps backs away and leaves room for the next generation of baby bumps. This generational dance continues to infinity.

I designed many fractal generators using flipped segments because I had observed a similar technique in Mandelbrot's amazing Snowflake Sweep (shown at right), and other fractal curves described in the book.

The boundary of the snowflake sweep is the same as the Koch Snowflake. It is topologically equal to a disk (the boundary never makes contact with itself). Now consider the classic Harter-Heighway Dragon Curve: this curve fills a planar region that has a series of "wasp-waists" - touch-points that separate body parts, each topologically equal to a disk. There are infinetely many such body parts.

Harter Heighway Dragon Curve similar body parts

Snowflake Sweep

The same is true for the Dragon of Eve: the sweep that fills it is divided into infinitely many self-similar body parts. However, they are not all exactly self-similar! (look closely).

One way that the Dragon of Eve is different than the classic Dragon Curve is that it has varying lengths in its segments, owing to the fact that the middle segment in the generator has length equal to the square root of 2, while the other segments have length 1.

The textural effect of having varying lengths can be seen in the high-resolution rendering below:

Dragon of Eve body parts

As a continual unbroken curve (as a connected series of line segments), how long is the Dragon of Eve? Well, it depends on how many times the process of iteration is performed. By definition, a plane-filling curve is infinitely long, since it has to be iterated an infinite number of times in order to completely fill the entire region of the plane. Below is an illustration showing how the length of the Dragon of Eve increases exponentially each time the process of iteration is performed. (In this illustration the length starts as 1 - consistent with Mandelbrot's convention of normalizing all generators to the unit interval).

Here's a video I made describing the Dragon of Eve, and some of its interesting properties:

My scheme for generating the Dragon of Eve is described on this page and illustrated below. This scheme uses Gaussian and Eisenstein integers, which allows the entire definition of an edge-replacement fractal curve to be represented in a compact way.

Check out my Fractal Curves page, where many more strange space-filling fractal beasts can be seen.

Finally, here is a reference to the Great Wave of Kanagawa: Brain Filling video Bubble Tree Algorithm

© 2018 Jeffrey Ventrella