SSS Curves (Segmented Self-Similar Curves) was conceived as a independent learner, desk-top laboratory in which I and my students could reproduce such famous fractal curves as the Hilbert curve, Sierpinsky Curve, Koch curve and others. We also wanted to find a deeper understanding of fractal dimensions, so we built in the ability to create and study our own curves.
SSSCurves (Segmented Self-Similar Curves)
A segmented self-similar curve is a type of fractal. The archtypical curve of this type is the Koch Arc. Inspired by Mandelbrot's book "The Fractal Geometry of Nature", this fractal laboratory lets a student design an initiator curve, design a generator curve, and then perform a Koch construction of a fractal curve of their own design. Students can design their own never-before-seen fractal art. To download the software, click here SSSCurves.zip (1.0 Mb). The help files associated with SSSCurves are extensive but are designed to function in Windows XP or earlier. If you wish to make the help files operable in Windows Vista, Windows 7, or Windows 8 environments, visit this site and install WinHlp32.exe on your system. To go to the download site, click here (http://support.microsoft.com/kb/917607).
My 'Forest in Winter'
Mandelbrot's 'Snowflake Sweep'
One can only say 'Wow!'.
Other Examples of Output
The Harter-Heighway Dragon Curve.
An archipelago is a fractal that is composed of many unconnected parts. SSS Curves allows for invisible legs in the generator curve, which leads to the possibility of this type of fractal being generated from a Koch construction. The Harter-Heighway dragon curve was made famous by Gardner in a Scientific American article in the 1970s, if I recall. It is a space-filling curve that can be used to tile the plane. It has many very cool properties.
Rubber Ducky Curve - Not Clipped.
Rubber Ducky Curve - Clipped.
The rubber ducky curve is a fractal of my own design. It has a fractal dimension of 2.0, which makes it a space-filling curve. It touches itself several times, as seen in the unclipped version. However, when you clip all of the corners off, you see that it never crosses itself. However, it is in the clipped version that the characteristic 'rubber ducky' shape appears.
Types of Contact in Koch Constructions
The kind of fractal produced by SSS Curves is called a Koch construction, named after the mathematician who first developed this type of fractal. One of the fascinating things about Koch constructions is this - it is possible to design space-filling curves. A space-filling curve is one which has a fractal dimension of exactly 2.0 and, in the limit of infinite iterations, completely covers a 2-dimensional area. So, for example, the following is an example of a space-filling curve which fills a triangular area.
You can see that the generator curve is extremely simple, being two right-sided vectors at an angle of 45 degrees, heads together. After a mere 15 iterations, it is no longer possible for the printer to distinguish one line from another. The triangular space is filling in. If we could (and we cannot) let this go to infinite iterations, every single point in the RXR space within the triangle would be part of the curve. What is astounding is that, even at that unimaginably intense density of lines, the curve never crosses itself, and never even touches itself. This sounds impossible, but there are mathematical proofs to the contrary.
But, this requires a little explanation. When we talk about a curve 'touching itself' there are classes of self contact.
The above two figures illustrate type 1 contact. On the left, we see the same curve, but after only two iterations of the same generator. Note that the curve touches itself at one point. When a curve touches itself at a single point, but does not cross over itself, it is called type 1 contact. It is possible to remove type 1 contact by simply clipping the corners off of the curve at each and every corner, converting it into a curve that has no contact with itself, as shown on the right. Both versions of this curve are space-filling, in the sense that every point within the triangle becomes part of the curve at some iteration. The clipped version is both space-filling and avoids all self-contact.
These next two figures illustrate type 2 contact. I call this the 'barnyard sweep'. This fractal is of my own design (though someone like Mandelbrot probably discovered it first and never published it). I named it such because I see a barn with a silo in the generator curve. The curve on the left if the second iteration. Each iteration thereafter multiplies the number of 'barnyards' by a factor of nine. "Sweep" means it is a space-filling curve. A type 2 contact happens when a part of the curve lies along another part of the curve, but does not cross it. Two segments of the curve are then said to be colinear. This curve suffers from three instances of type 1 contact, and one instance of type 2 contact. Can you spot them?
Finally, we have type 3 contact, in which the curve unavoidably crosses itself. The above curve, which is un-named, suffers from type 3 contact in 3 places. Two can be avoided by clipping, but one instance cannot be avoided.
Last updated: January 2015