᠎᠎᠎          
51K

Twin dragon curve

World's simplest fractal tool
This utility lets you draw colorful and stylish Heighway twin fractals. The options below will help you customize your fractal – you can set fractal's iteration stage, dimensions, orientation, and colors for each twin dragon individually. Make sure to select opposite colors for the twins to get a fabulous looking fractal. Fun fact – you can join infinitely many Heighway dragons together back-to-back, back-to-belly, or belly-to-belly and tile the entire space. Created by fractal fans from team Browserling. Fractabulous!
Check out our primary project! Browserling
We created Browserling – get a cloud browser in 5 seconds. Check it out!
Recursion and Dimensions
Final iteration stage. (Stop recursion at this level.)
Canvas width
Canvas height
Width of line segment used to draw the fractal.
Twin Heighway Palettes
Fractal's background color.
First dragon's color.
Second dragon's color.
Padding and Orientation
Number of pixels between the fractal and canvas.
Heighway twin dragon orientation.

What is a twin dragon curve?

learn more about this tool
This online browser-based tool allows you to draw your own unique twin dragon fractal. The twin dragon fractal is often casually called the Heighway twins. The scientists, Chandler Davis and Donald Knuth, who discovered this fractal attributed it to Heighway because of its resemblance and connection to the regular Heighway fractal. As it turns out, the Heighway twins are Siamese dragons conjoined belly to belly. When iterated for many stages, the dragon heads start from a single one point, diverge into bodies and converge again, ending with both tails touching at another point. The larger the iteration depth, the tighter together the dragon lines are drawn until finally lines are so close together that they fill the twins' bodies completely. Heighway twins is one of many fractals that can be tiled – if you take a copy of this fractal, you can conjoin it with the previous copy. You can repeat this process multiple times until the whole area is filled with dragons. Mind boggling and awesome at the same time, or as we love to say – fractabulous!

Twin dragon curve examples

Click to use
Filled Heighway Twins
In this example, we increase the iteration stage to 16 and set the curve drawing width to 2 pixels. These conditions are sufficient for the curves to be drawn so close together that they completely fill the bounds of both Siamese dragons. As a result, we get two filled Heighway twin dragons, one filled with cyan color and the other filled with lime color.
In this example, we increase the iteration stage to 16 and set the curve drawing width to 2 pixels. These conditions are sufficient for the curves to be drawn so close together that they completely fill the bounds of both Siamese dragons. As a result, we get two filled Heighway twin dragons, one filled with cyan color and the other filled with lime color.
Required options
These options will be used automatically if you select this example.
Final iteration stage. (Stop recursion at this level.)
Canvas width
Canvas height
Width of line segment used to draw the fractal.
Fractal's background color.
First dragon's color.
Second dragon's color.
Number of pixels between the fractal and canvas.
Heighway twin dragon orientation.
Detailed Twin Dragons
This example gives a detailed view of twin Heighway fractal. By setting the recursion level to 11 iterations, we can see how this fractal is made of individual line segments that form a mesh of interconnected rectangles. We've chosen complementary colors for the drawing to make it maximally attractive. It uses a governor-bay color for the first dragon, thunderbird color for the second dragon, and anakiwa color for the background. It sets the line segment width to 7 pixels and canvas space to 800x1000 pixels.
This example gives a detailed view of twin Heighway fractal. By setting the recursion level to 11 iterations, we can see how this fractal is made of individual line segments that form a mesh of interconnected rectangles. We've chosen complementary colors for the drawing to make it maximally attractive. It uses a governor-bay color for the first dragon, thunderbird color for the second dragon, and anakiwa color for the background. It sets the line segment width to 7 pixels and canvas space to 800x1000 pixels.
Required options
These options will be used automatically if you select this example.
Final iteration stage. (Stop recursion at this level.)
Canvas width
Canvas height
Width of line segment used to draw the fractal.
Fractal's background color.
First dragon's color.
Second dragon's color.
Number of pixels between the fractal and canvas.
Heighway twin dragon orientation.
Twin Dragon Island
In this example, we create a twin dragon island fractal. This fractal is constructed by using just one color (cloud-burst blue) to fill the contours of the twins and a high iteration count (18 iterations). The dragon curve is just one pixel thick but by the time it's iterated 18 times, it's twisted and looped so many times that this tiny line completely fills the dragon bounds. This fractal island is also often called the Heighway island fractal.
In this example, we create a twin dragon island fractal. This fractal is constructed by using just one color (cloud-burst blue) to fill the contours of the twins and a high iteration count (18 iterations). The dragon curve is just one pixel thick but by the time it's iterated 18 times, it's twisted and looped so many times that this tiny line completely fills the dragon bounds. This fractal island is also often called the Heighway island fractal.
Required options
These options will be used automatically if you select this example.
Final iteration stage. (Stop recursion at this level.)
Canvas width
Canvas height
Width of line segment used to draw the fractal.
Fractal's background color.
First dragon's color.
Second dragon's color.
Number of pixels between the fractal and canvas.
Heighway twin dragon orientation.
Pro tips Master online fractal tools
You can pass options to this tool using their codes as query arguments and it will automatically compute output. To get the code of an option, just hover over its icon. Here's how to type it in your browser's address bar. Click to try!
https://onlinefractaltools.com/draw-twin-heighway-fractal?&width=700&height=600&iterations=16&background-color=%2307026b&dragon-1-color=%2305d1ff&dragon-2-color=%23c4ff00&line-width=2&padding=10&direction=right
All fractal tools
Didn't find the tool you were looking for? Let us know what tool we are missing and we'll build it!
Quickly draw a custom McWorter dendrite fractal.
Quickly draw a custom canopy tree fractal.
Quickly draw a custom Gosper fractal.
Quickly draw a custom Z-order fractal.
Quickly draw a custom Hilbert fractal.
Quickly draw a custom binary v-fractal.
Quickly draw a custom Peano fractal.
Quickly draw a custom Heighway dragon fractal.
Quickly draw a custom twin dragon Heighway fractal.
Quickly draw a custom Heighway nonadragon fractal.
Quickly draw a custom Koch fractal.
Quickly draw a custom triflake fractal.
Quickly draw a custom Sierpinski triangle fractal.
Quickly draw a custom Sierpinski pentagon fractal.
Quickly draw a custom Sierpinski hexagon fractal.
Quickly draw a custom Sierpinski polygon fractal.
Quickly draw a custom Moore fractal.
Quickly draw a custom Cantor comb fractal.
Quickly draw a custom Cantor dust fractal.
Quickly draw a custom Levy fractal curve.
Quickly draw a custom ice fractal.
Quickly draw a custom Pythagoras tree fractal.
Quickly draw a custom t-square fractal.
Quickly draw a custom Hausdorff tree fractal.
Coming soon These fractal tools are on the way
Generate a Hilbert Sequence
Walk the Hilbert fractal and enumerate its coordinates.
Generate a Peano Sequence
Walk the Peano fractal and enumerate its coordinates.
Generate a Moore Sequence
Walk the Moore fractal and enumerate its coordinates.
Generate a Hilbert String
Encode the Hilbert fractal as a string.
Generate a Peano String
Encode the Peano fractal as a string.
Generate a Moore String
Encode the Moore fractal as a string.
Generate a Cantor String
Encode the Cantor set as a string.
Generate a Dragon String
Encode the Heighway Dragon as a string.
Generate a Sierpinski String
Encode the Sierpinski fractal as a string.
Sierpinski Pyramid
Generate a Sierpinski tetrahedron (tetrix) fractal.
Cantor's Cube
Generate a Cantor's cube fractal.
Menger Sponge
Generate a Sierpinski-Menger fractal.
Jerusalem Cube
Generate a Jerusalem cube fractal.
Mosely Snowflake
Generate a Jeaninne Mosely fractal.
Mandelbrot Tree
Generate a Mandelbrot tree fractal.
Barnsey's Tree
Generate a Barnsley's tree fractal.
Barnsey's Fern
Generate a Barnsley's fern fractal.
Binary Fractal Tree
Generate a binary tree fractal.
Ternary Fractal Tree
Generate a ternary tree fractal.
Dragon Fractal Tree
Generate a dragon tree fractal.
De Rham Fractal
Generate a de Rham curve.
Takagi Fractal
Generate a Takagi-Landsberg fractal curve.
Peano Pentagon
Generate a Peano pentagon fractal curve.
Tridendrite Fractal
Generate a tridendrite fractal curve.
McWorter's Pentigree
Generate a Pentigree fractal curve.
McWorter's Lucky Seven
Generate a lucky seven fractal curve.
Eisenstein Fractions
Generate an Eisenstein fractions fractal curve.
Bagula Double V
Generate a Bagula double five fractal curve.
Julia Set
Generate a Julia fractal set.
Mandelbrot Set
Generate a Mandelbrot fractal set.
Mandelbulb Fractal
Generate a Mandelbulb fractal.
Mandelbox Fractal
Generate a Mandelbox fractal.
Buddhabrot Fractal
Generate a Buddhabrot fractal.
Burning Ship Fractal
Generate a Burning Ship fractal.
Toothpick Fractal
Generate a toothpick sequence fractal.
Ulam-Warburton Fractal
Generate an Ulam-Warburton fractal curve.
ASCII Fractal
Generate an ASCII fractal.
ANSI Fractal
Generate an ANSI fractal.
Unicode Fractal
Generate a Unicode fractal.
Emoji Fractal
Generate an emoji fractal.
Braille Fractal
Generate a braille code fractal.
Audio Fractal
Generate a fractal in audio form.
Draw a Pseudofractal
Create a fractal that looks like one but isn't a fractal.
Convert Text to a Fractal
Generate a fractal from any text.
Convert a String to a Fractal
Generate a fractal from a string.
Convert a Number to a Fractal
Generate a fractal from a number.
Merge Two Fractals
Join any two fractals together.
Draw a Random Fractal
Create a completely random fractal.
Iterate an IFS
Set up an arbitrary IFS system and iterate it.
Run IFS on an Image
Recursively transform an image using IFS rules.
Iterate an ICAF
Run infinite compositions of analytic functions.
Generate a Fractal Landscape
Create a surface that mimics a natural terrain.
Generate a Brownian Surface
Create a fractal surface via Brownian motion.
Generate a Self-similar Image
Apply fractal algorithms on your image and make it self-similar.
Find Fractal Patterns in Images
Find fractal patterns in any given image.
Find Fractal Patterns in Text
Find fractal patterns in any given text.
Find Fractal Patterns in Numbers
Find fractal patterns in any given number.
Fill a Plane with Fractals
Tessellate a plane with fractals.
Run a Cellular Automaton
Run a cellular automaton with custom rules.
Play Game of Life
Play Conway's Game of Life on an infinite grid.