Toward a Fractal Spline.

By Mark Graham


Many cultures, traditions and disciplines employ geometry to artistic effect. From the ancient Moorish decorations of the Alhambra Palace to the tiling of a texture map for the hull of a CG spaceship – everywhere you look - geometry is a bridge between mathematics and art.

Patterns, in particular, have fascinated man over centuries and perhaps this is due to the rhythm of repetition and the pleasure of having our expectations confounded by unexpected variation.

Brian Eno has said that repetition is a form of change and this is certainly true of the mathematics of fractals.

This tutorial will take you, step by step, through the creation of a complex geometric object (a spline) from simple mathematical principles to finished artwork suitable for output for any application (in this case, an original mandala design for a CD sleeve) using Satori (PhotoXL or FilmFX) 2.5.

There are an infinite number of patterns we could use. I am indebted to the Penguin Dictionary of Curious and Interesting Geometry by David Wells for my introduction to the remarkable "Hilbert’s Space-Filling Curve" which I have used as the basis for my design. It is so simple and so perfect and works like this...

We are going to construct a curve using, for the moment at least, only straight lines.

We could describe the curve has having the following property...

…that it goes round the centre of a square in such a way that, were we to sub-divide the square into 4 smaller squares, it would pass through the centre of each of the smaller squares.

And so on...and so infinitum. It becomes a sort of fractal curve - always replicating on a smaller scale the pattern of the path in the previous stage.

This is a job that suits Satori’s resolution independence perfectly. RI mimics the mathematics of fractals in that no matter how closely you look at something you always see the same amount of detail.

Open Satori and create a canvas 1000 pixels wide by 1000 pixels high as a nominal starting point although size/resolution is irrelevant at this stage - being vector-based anything can be scaled or sized to any dimension at any time.

I’ve used a Zoom View with a magnification of x32 by clicking the In button on the Zoom Controls Palette 5 times.

From the Geometry, Shapes tab select Open Bezier Spline.

From the Geometry, Properties tab set an Outline Width of 2.

Use the Grids\Constraints toolbar to set an Interval of x10 and y10 and apply Grid Snap.

Remember, we are going to create a curve using straight lines. This helps us understand, at its simplest, the beautiful structure underlying the curve.

These "lines" are vectors (directions between co-ordinates) which plot the shortest path between any two clicks we make. The clicks themselves form a path that defines the spine of the curve. Later we will edit the properties at these control points to alter the shape of the curve.

Satori’s UI permits this way of working. In normal practice when creating a spline one might expect to employ the "click and drag" method setting values for the handles (curvyness) as you proceed.

In this case it important not to get the control points out of position so just click the mouse button ONCE ONLY to define each "corner". We’ll do the frilly stuff in a minute.

So you just draw the shape left-clicking for each vertex remembering that you can move any which you find to be misplaced.

Click on the thumbnail to see the full image

geo1t.jpg (2200 bytes)
The path of the curve at its simplest.

fractalgeo2t.jpg (2259 bytes)
"The first continuation of the curve"

fractalgeo3t.jpg (2633 bytes)
"By the time we get to level three it’s probably time to put the kettle on"

But realistically it’s only 52 clicks (count ‘em) and takes two minutes at most.

fractalgeo4t.jpg (2736 bytes)
"hmmm...can anyone think of a shortcut?"

Now, once the path of the curve is set proceed to Edit Top Object and click on any vertex and drag out the control handles.

There are three for each vertex - two control the tension into and out of the curve and are "locked" together while the third sets the vertex co-ordinates (its position).

Experiment with different settings noticing how moving the handles changes the shape of the curve by varying the tension at the vertex. A mouse-right click will launch the Edit Spline menu where you can access further selections such as Break Handles.

fractalgeo5t.jpg (2329 bytes)
"Using Handles"

fractalgeo6t.jpg (2705 bytes)
"Theme and Variations"

It soon becomes clear that there is an infinite number of possibilities. Once the shape of the curve is defined we can proceed to thinking about its properties - color, thickness etc.

For this design for a CD sleeve I’ve chosen a white line with a black border over a blue background. Edit the object, set the properties and Finish Edit.

fractalgeo7t.jpg (2274 bytes)
"Edit the OBJECT PROPERTIES at any time"

Next I’ll crop the artwork with an Invert Cut, Circle then I’ll add a border, with Outline, Circles.

fractalgeo8t.jpg (2431 bytes)

The design requires a line of text. I’ll place this, choose the size and font, render the result and then move the layer up to centre the design as a whole.

I can save out many different versions and can alter every detail of the design without compromise.

fractalgeo9t.jpg (2509 bytes)
"The final result"