Koch Rock

The Koch snowflake, named after the Swedish mathematician Helge von Koch, is a famous fractal that encloses a finite area within an infinitely long boundary. To make a ’flake, you start with an equilateral triangle:

Koch snowflake stage #1 (with room for manœuvre)


Next, you divide each side in three and erect a smaller equilateral triangle on the middle third, like this:

Koch snowflake #2


Each original straight side of the triangle is now 1/3 longer, so the full perimeter has also increased by 1/3. In other words, perimeter = perimeter * 1⅓. If the perimeter of the equilateral triangle was 3, the perimeter of the nascent Koch snowflake is 4 = 3 * 1⅓. The area of the original triangle also increases by 1/3, because each new equalitarian triangle is 1/9 the size of the original and there are three of them: 1/9 * 3 = 1/3.

Now here’s stage 3 of the snowflake:

Koch snowflake #3, perimeter = 4 * 1⅓ = 5⅓


Again, each straight line on the perimeter has been divided in three and capped with a smaller equilateral triangle. This increases the length of each line by 1/3 and so increases the full perimeter by a third. 4 * 1⅓ = 5⅓. However, the area does not increase by 1/3. There are twelve straight lines in the new perimeter, so twelve new equilateral triangles are erected. However, because their sides are 1/9 as long as the original side of the triangle, they have 1/(9^2) = 1/81 the area of the original triangle. 1/81 * 12 = 4/27 = 0.148…

Koch snowflake #4, perimeter = 7.11


Koch snowflake #5, p = 9.48


Koch snowflake #6, p = 12.64


Koch snowflake #7, p = 16.85


Koch snowflake (animated)


The perimeter of the triangle increases by 1⅓ each time, while the area reaches a fixed limit. And that’s how the Koch snowflake contains a finite area within an infinite boundary. But the Koch snowflake isn’t confined to itself, as it were. In “Dissecting the Diamond”, I described how dissecting and discarding parts of a certain kind of diamond could generate one side of a Koch snowflake. But now I realize that Koch snowflakes are everywhere in the diamond — it’s a Koch rock. To see how, let’s start with the full diamond. It can be divided, or dissected, into five smaller versions of itself:

Dissectable diamond


When the diamond is dissected and three of the sub-diamonds are discarded, two sub-diamonds remain. Let’s call them sub-diamonds 1 and 2. When this dissection-and-discarding is repeated again and again, a familiar shape begins to appear:

Koch rock stage 1


Koch rock #2


Koch rock #3


Koch rock #4


Koch rock #5


Koch rock #6


Koch rock #7


Koch rock #8


Koch rock #9


Koch rock #10


Koch rock #11


Koch rock #12


Koch rock #13


Koch rock (animated)


Dissecting and discarding the diamond creates one side of a Koch triangle. Now see what happens when discarding is delayed and sub-diamonds 1 and 2 are allowed to appear in other parts of the diamond. Here again is the dissectable diamond:

Dia-flake stage 1


If no sub-diamonds are discarded after dissection, the full diamond looks like this when each sub-diamond is dissected in its turn:

Dia-flake #2


Now let’s start discarding sub-diamonds:

Dia-flake #3


And now discard everything but sub-diamonds 1 and 2:

Dia-flake #4


Dia-flake #5


Dia-flake #6


Dia-flake #7


Dia-flake #8


Dia-flake #9


Dia-flake #10


Now full Koch snowflakes have appeared inside the diamond — count ’em! I see seven full ’flakes:

Dia-flake #11


Dia-flake (animated)


But that isn’t the limit. In fact, an infinite number of full ’flakes appear inside the diamond — it truly is a Koch rock. Here are examples of how to find more full ’flakes:

Dia-flake 2 (static)


Dia-flake 2 (animated)


Dia-flake 3 (static)


Dia-flake 3 (animated)


Previously pre-posted:

Dissecting the Diamond — other fractals in the dissectable diamond

Dissecting the Diamond

Pre-previously on O.o.t.Ü.-F., I dilated the delta. Now I want to dissect the diamond. In geometry, a shape is dissected when it is completely divided into smaller shapes of some kind. If the smaller shapes are identical (except for size) to the original, the original shape is called a rep-tile (because it can be tiled with repeating versions of itself). If the smaller identical shapes are equal in size to each other, the rep-tile is regular; if the smaller shapes are not equal, the rep-tile is irregular. This diamond is an irregular rep-tile or irrep-tile:

Dissectable diamond

Dissected diamond


As you can see, the diamond can be dissected into five smaller versions of itself, two larger ones and three smaller ones. This makes it a rep-5 irrep-tile. And the smaller versions, or sub-diamonds, can themselves be dissected ad infinitum, like this:

Dissected diamond stage #1


Dissected diamond #2


Dissected diamond #3


Dissected diamond #4


Dissected diamond #5


Dissected diamond #6


Dissected diamond #7


Dissected diamond #8


Dissected diamond #9


Dissected diamond (animated)


The full dissected diamond is a fractal, or shape that is similar to itself at varying scales. However, the fractality of the diamond becomes most obvious when you dissect-and-discard. That is, first you dissect the diamond, then you discard one (or more) of the sub-diamonds, like this:

Diamond fractal (retaining sub-diamonds 1,2,3,4) stage #1


1234-Diamond #2


1234-Diamond #3


1234-Diamond #4


1234-Diamond #5


1234-Diamond #6


1234-Diamond #7


1234-Diamond #8


1234-Diamond #9


1234-Diamond (animated)


Here are some more fractals created by dissecting and discarding one sub-diamond:

Diamond fractal (retaining sub-diamonds 1,2,4,5)


1245-Diamond (anim)


2345-Diamond


2345-Diamond (anim)


The 2345-diamond fractal has variants created by mirroring one or more sub-diamonds, so that the orientation of the sub-dissections changes. Here is one of the variants:

2345-Diamond (variation)


2345-Diamond (variant) (anim)


And here is a fractal created by dissecting and discarding two sub-diamonds:

Diamond fractal (retaining sub-diamonds 1,2,3)


123-Diamond (anim)


Again, the fractal has variants created by mirroring one or more of the sub-diamonds:

123-Diamond (variant #1)


123-Diamond (variant #2)


123-Diamond (variant #3)


123-Diamond (variant #4)


Some more fractals created by dissecting and discarding two sub-diamonds:

125-Diamond


125-Diamond (anim)


134-Diamond


134-Diamond (anim)


235-Diamond


235-Diamond (anim)


135-Diamond


135-Diamond (anim)


A variant of the 135-Diamond fractal looks like one side of a Koch snowflake:

135-Diamond (variant #1) — like Koch snowflake


135-Diamond (variant #2)


Finally, here are some colour variants of the full dissected diamond:






Full diamond colour variants (anim)


Elsewhere other-engageable:

Dilating the Delta

Dilating the Delta

A circle with a radius of one unit has an area of exactly π units = 3.141592… units. An equilateral triangle inscribed in the unit circle has an area of 1.2990381… units, or 41.34% of the area of the unit circle.

In other words, triangles are cramped! And so it’s often difficult to see what’s going on in a triangle. Here’s one example, a fractal that starts by finding the centre of the equilateral triangle:

Triangular fractal stage #1


Next, use that central point to create three more triangles:

Triangular fractal stage #2


And then use the centres of each new triangle to create three more triangles (for a total of nine triangles):

Triangular fractal stage #3


And so on, trebling the number of triangles at each stage:

Triangular fractal stage #4


Triangular fractal stage #5


As you can see, the triangles quickly become very crowded. So do the central points when you stop drawing the triangles:

Triangular fractal stage #6


Triangular fractal stage #7


Triangular fractal stage #8


Triangular fractal stage #9


Triangular fractal stage #10


Triangular fractal stage #11


Triangular fractal stage #12


Triangular fractal stage #13


Triangular fractal (animated)


The cramping inside a triangle is why I decided to dilate the delta like this:

Triangular fractal

Circular fractal from triangular fractal


Triangular fractal to circular fractal (animated)


Formation of the circular fractal (animated)


And how do you dilate the delta, or convert an equilateral triangle into a circle? You use elementary trigonometry to expand the perimeter of the triangle so that it lies on the perimeter of the unit circle. The vertices of the triangle don’t move, because they already lie on the perimeter of the circle, but every other point, p, on the perimeter of the triangles moves outward by a fixed amount, m, depending on the angle it makes with the center of the triangle.

Once you have m, you can move outward every point, p(1..i), that lies between p on the perimeter and the centre of the triangle. At least, that’s the theory between the dilation of the delta. In practice, all you need is a point, (x,y), inside the triangle. From that, you can find the angle, θ, and distance, d, from the centre, calculate m, and move (x,y) to d * m from the centre.

You can apply this technique to any fractal created in an equilateral triangle. For example, here’s the famous Sierpiński triangle in its standard form as a delta, then as a dilated delta or circle:

Sierpiński triangle

Sierpiński triangle to circular Sierpiński fractal


Sierpiński triangle to circle (animated)


But why stop at triangles? You can use the same elementary trigonometry to convert any regular polygon into a circle. A square inscribed in a unit circle has an area of 2 units, or 63.66% of the area of the unit circle, so it too is cramped by comparison with the circle. Here’s a square fractal that I’ve often posted before:

Square fractal, jump = 1/2, ban on jumping towards any vertex twice in a row


It’s created by banning a randomly jumping point from moving twice in a row 1/2 of the distance towards the same vertex of the square. When you dilate the fractal, it looks like this:

Circular fractal from square fractal, j = 1/2, ban on jumping towards vertex v(i) twice in a row


Circular fractal from square (animated)


And here’s a related fractal where the randomly jumping point can’t jump towards the vertex directly clockwise from the vertex it’s previously jumped towards (so it can jump towards the same vertex twice or more):

Square fractal, j = 1/2, ban on vertex v(i+1)


When the fractal is dilated, it looks like this:

Circular fractal from square, i = 1


Circular fractal from square (animated)


In this square fractal, the randomly jumping point can’t jump towards the vertex directly opposite the vertex it’s previously jumped towards:

Square fractal, ban on vertex v(i+2)


And here is the dilated version:

Circular fractal from square, i = 2

Circular fractal from square (animated)


And there are a lot more fractals where those came from. Infinitely many, in fact.

Square Routes Re-Re-Re-Re-Revisited

Pre-previously in my post-passionate portrayal of polygonic performativity, I’ve usually looked at what happens when a moving point is banned from jumping twice-in-a-row (and so on) towards the same vertex of a square or other polygon. But what happens when the point isn’t banned but compelled to do something different? For example, if the point usually jumps 1/2 of the distance towards the vertex for the second (third, fourth…) time, you could make it jump 2/3 of the way, like this:

usual jump = 1/2, forced jump = 2/3


And here are the fractals created when the vertex currently chosen is one or two places clockwise from the vertex chosen before:

usual jump = 1/2, forced jump = 2/3, vertex-inc = +1


j1 = 1/2, j2 = 2/3, vi = +2


Or you can make the point jump towards a different vertex to the one chosen, without recording the different vertex in the history of jumps:

v1 = +0, v2 = +1, j = 1/2


v1 = +0, v2 = +1, vi = +2


v1 = 0, v2 = +2


v1 = 0, v2 = +2, vi = +1


Or you can make the point jump towards the center of the square:

v1 = 0, v2 = center, j = 1/2


v1 = 0, v2 = center, vertex-inc = +1


v1 = 0, v2 = center, vertex-inc = +2


And so on:

v1 = +1, v2 = +1, vi = +1


v1 = +1, v2 = +1, vi = +2


v1 = +0, v2 = +1, reverse test


v1 = +0, v2 = +1, vi = +1, reverse test


v1 = +0, v2 = +1, vi = +2, reverse test


v1 = +0, v2 = +2, reverse test


v1 = +0, v2 = +2, vi = +1, reverse test


v1 = +2, v2 = +2, vi = +1, reverse test


j1 = 1/2, j2 = 2/3, vi = +0,+0 (record previous two jumps in history)


j1 = 1/2, j2 = 2/3, vi = +0,+2


j1 = 1/2, j2 = 2/3, vi = +2,+2


j1 = 1/2, j2 = 2/3, vi = +0,+0,+0 (previous three jumps)


Previously pre-posted (please peruse):

Square Routes
Square Routes Revisited
Square Routes Re-Revisited
Square Routes Re-Re-Revisited
Square Routes Re-Re-Re-Revisited

Get Your Prox Off #3

I’ve looked at lot at the fractals created when you randomly (or quasi-randomly) choose a vertex of a square, then jump half of the distance towards it. You can ban jumps towards the same vertex twice in a row, or jumps towards the vertex clockwise or anticlockwise from the vertex you’ve just chosen, and so on.

But you don’t have to choose vertices directly: you can also choose them by distance or proximity (see “Get Your Prox Off” for an earlier look at fractals-by-distance). For example, this fractal appears when you can jump half-way towards the nearest vertex, the second-nearest vertex, and the third-nearest vertex (i.e., you can’t jump towards the fourth-nearest or most distant vertex):

vertices = 4, distance = (1,2,3), jump = 1/2


It’s actually the same fractal as you get when you choose vertices directly and ban jumps towards the vertex diagonally opposite from the one you’ve just chosen. But this fractal-by-distance isn’t easy to match with a fractal-by-vertex:

v = 4, d = (1,2,4), j = 1/2


Nor is this one:

v = 4, d = (1,3,4)


This one, however, is the same as the fractal-by-vertex created by banning a jump towards the same vertex twice in a row:

v = 4, d = (2,3,4)


The point can jump towards second-nearest, third-nearest and fourth-nearest vertices, but not towards the nearest. And the nearest vertex will be the one chosen previously.

Now let’s try squares with an additional point-for-jumping-towards on each side (the points are numbered 1 to 8, with points 1, 3, 5, 7 being the true vertices):

v = 4 + s1 point on each side, d = (1,2,3)


v = 4 + s1, d = (1,2,5)


v = 4 + s1, d = (1,2,7)


v = 4 + s1, d = (1,3,8)


v = 4 + s1, d = (1,4,6)


v = 4 + s1, d = (1,7,8)


v = 4 + s1, d = (2,3,8)


v = 4 + s1, d = (2,4,8)


And here are squares where the jump is 2/3, not 1/2, and you can choose only the nearest or third-nearest jump-point:

v = 4, d = (1,3), j = 2/3


v = 4 + s1, d = (1,3), j = 2/3


Now here are some pentagonal fractals-by-distance:

v = 5, d = (1,2,5), j = 1/2


v = 5 + s1, d = (1,2,7)


v = 5 + s1, d = (1,2,8)


v = 5 + s1, d = (1,2,9)


v = 5 + s1, d = (1,9,10)


v = 5 + s1, d = (1,10), j = 2/3


v = 5 + s1, d = (various), j = 2/3 (animated)


And now some hexagonal fractals-by-distance:

v = 6, d = (1,2,4), j = 1/2


v = 6, d = (1,3,5)


v = 6, d = (1,3,6)


v = 6, d = (1,2,3,4)


v = 6 + central point, d = (1,2,3,4)


v = 6, d = (1,2,3,6)


v = 6, d = (1,2,4,6)


v = 6, d = (1,3,4,5)


v = 6, d = (1,3,4,6)


v = 6, d = (1,4,5,6)


Elsewhere other-accessible:

Get Your Prox Off — an earlier look at fractals-by-distance
Get Your Prox Off # 2 — and another

Nail Supremacy

Ὁ γαρ ἡδονής και ἀλγηδόνος ἧλος, ὃς πρὸς το σώμα τήν ψυχην προσηλοῖ, μέγιστον κακὸν ἔχειν ἔοικε, τὸ τα αἰσθητά ποιεῖν ἐναργέστερα τῶν νοητῶν, καὶ καταβιάζεσθαι καὶ πάθει μᾶλλον ἢ λόγῳ κρίνειν τήν διάνοιαν.

• ΠΡΟΒΛΗΜΑ Β’. Πώς Πλάτων ἔλεγε τον θεὸν άεὶ γεωμετρεῖν.


Nam voluptatis et doloris ille clavus, quo animus corpori affigitur, id videtur maximum habere malum, quod sensilia facit intelligibilibus evidentiora, vimque facit intellectui, ut affectionem magis quam rationem in judicando sequatur.

• QUÆSTIO II: Qua ratione Plato dixerit, Deum semper geometriam tractare.


For the nail of pain and pleasure, which fastens the soul to the body, seems to do us the greatest mischief, by making sensible things more powerful over us than intelligible, and by forcing the understanding to determine them rather by passion than by reason.

• Plutarch’s Symposiacs, QUESTION II: What is Plato’s Meaning, When He Says that God Always Plays the Geometer?

Fractal + Star = Fractar

Here’s a three-armed star made with three lines radiating at intervals of 120°:

Triangular fractal stage #1


At the end of each of the three lines, add three more lines at half the length:

Triangular fractal #2


And continue like this:

Triangular fractal #3


Triangular fractal #4


Triangular fractal #5


Triangular fractal #6


Triangular fractal #7


Triangular fractal #8


Triangular fractal #9


Triangular fractal #10


Triangular fractal (animated)


Because this fractal is created from a series of star, you could call it a fractar. Here’s a black-and-white version:

Triangular fractar (black-and-white)


Triangular fractar (black-and-white) (animated)
(Open in a new window for larger version if the image seems distorted)


A four-armed star doesn’t yield an easily recognizable fractal in a similar way, so let’s try a five-armed star:

Pentagonal fractar stage #1


Pentagonal fractar #2


Pentagonal fractar #3


Pentagonal fractar #4


Pentagonal fractar #5


Pentagonal fractar #6


Pentagonal fractar #7


Pentagonal fractar (animated)


Pentagonal fractar (black-and-white)


Pentagonal fractar (bw) (animated)


And here’s a six-armed star:

Hexagonal fractar stage #1


Hexagonal fractar #2


Hexagonal fractar #3


Hexagonal fractar #4


Hexagonal fractar #5


Hexagonal fractar #6


Hexagonal fractar (animated)


Hexagonal fractar (black-and-white)


Hexagonal fractar (bw) (animated)


And here’s what happens to the triangular fractar when the new lines are rotated by 60°:

Triangular fractar (60° rotation) #1


Triangular fractar (60°) #2


Triangular fractar (60°) #3


Triangular fractar (60°) #4


Triangular fractar (60°) #5


Triangular fractar (60°) #6


Triangular fractar (60°) #7


Triangular fractar (60°) #8


Triangular fractar (60°) #9


Triangular fractar (60°) (animated)


Triangular fractar (60°) (black-and-white)


Triangular fractar (60°) (bw) (animated)


Triangular fractar (60°) (no lines) (black-and-white)


A four-armed star yields a recognizable fractal when the rotation is 45°:

Square fractar (45°) #1


Square fractar (45°) #2


Square fractar (45°) #3


Square fractar (45°) #4


Square fractar (45°) #5


Square fractar (45°) #6


Square fractar (45°) #7


Square fractar (45°) #8


Square fractar (45°) (animated)


Square fractar (45°) (black-and-white)


Square fractar (45°) (bw) (animated)


Without the lines, the final fractar looks like the plan of a castle:

Square fractar (45°) (bw) (no lines)


And here’s a five-armed star with new lines rotated at 36°:

Pentagonal fractar (36°) #1


Pentagonal fractar (36°) #2


Pentagonal fractar (36°) #3


Pentagonal fractar (36°) #4


Pentagonal fractar (36°) #5


Pentagonal fractar (36°) #6


Pentagonal fractar (36°) #7


Pentagonal fractar (36°) (animated)


Again, the final fractar without lines looks like the plan of a castle:

Pentagonal fractar (36°) (no lines) (black-and-white)


Finally, here’s a six-armed star with new lines rotated at 30°:

Hexagonal fractar (30°) #1


Hexagonal fractar (30°) #2


Hexagonal fractar (30°) #3


Hexagonal fractar (30°) #4


Hexagonal fractar (30°) #5


Hexagonal fractar (30°) #6


Hexagonal fractar (30°) (animated)


And the hexagonal castle plan:

Hexagonal fractar (30°) (black-and-white) (no lines)


Performativizing the Polygonic #3

Pre-previously in my passionate portrayal of polygonic performativity, I showed how a single point jumping randomly (or quasi-randomly) towards the vertices of a polygon can create elaborate fractals. For example, if the point jumps 1/φth (= 0.6180339887…) of the way towards the vertices of a pentagon, it creates this fractal:

Point jumping 1/φth of the way to a randomly (or quasi-randomly) chosen vertex of a pentagon


But as you might expect, there are different routes to the same fractal. Suppose you take a pentagon and select a single vertex. Now, measure the distance to each vertex, v(1,i=1..5), of the original pentagon (including the selected vertex) and reduce it by 1/φ to find the position of a new vertex, v(2,i=1..5). If you do this for each vertex of the original pentagon, then to each vertex of the new pentagons, and so on, in the end you create the same fractal as the jumping point does:

Shrink pentagons by 1/φ, stage #1


Stage #2


Stage #3


Stage #4


Stage #5


Stage #6


Shrink by 1/φ (animated) (click for larger if blurred)


And here is the route to a centre-filled variant of the fractal:

Central pentagon, stage #1


Stage #2


Stage #3


Stage #4


Stage #5


Stage #6


Central pentagon (animated) (click for larger if blurred)


Using this shrink-the-polygon method, you can reach the same fractals by a third route. This time, use vertex v(1,i) of the original polygon as the centre of the new polygon with its vertices v(2,i=1..5). Creation of the fractal looks like this:

Pentagons over vertices, shrink by 1/φ, stage #1 (no pentagons over vertices)


Stage #2


Stage #3


Stage #4


Stage #4


Stage #5


Stage #7


Pentagons over vertices (animated) (click for larger if blurred)


And here is a third way of creating the centre-filled pentagonal fractal:

Pentagons over vertices and central pentagon, stage #1


Stage #2


Stage #3


Stage #4


Stage #5


Stage #6


Stage #7


Pentagons over vertices with central pentagon (animated) (click for larger if blurred)


And here is a fractal created when there are three pentagons to a side and the pentagons are shrunk by 1/φ^2 = 0.3819660112…:

Pentagon at vertex + pentagon at mid-point of side, shrink by 1/φ^2


Final stage


Pentagon at vertex + pentagon at mid-point of side (animated) (click for larger if blurred)


Pentagon at vertex + pentagon at mid-point of side + central pentagon, shrink by 1/φ^2 and c. 0.5, stage #1


Stage #2


Stage #3


Stage #4


Stage #5


Pentagon at vertex + mid-point + center (animated) (click for larger if blurred)


Previously pre-posted:

Performativizing the Polygonic #2
Performativizing the Polygonic #1

Performativizing the Polygonic #2

Suppose a café offers you free drinks for three days. You can have tea or coffee in any order and any number of times. If you want tea every day of the three, you can have it. So here’s a question: how many ways can you choose from two kinds of drink in three days? One simple way is to number each drink, tea = 1, coffee = 2, then count off the choices like this:


1: 111
2: 112
3: 121
4: 122
5: 211
6: 212
7: 221
8: 222

Choice #1 is 111, which means tea every day. Choice #6 is 212, which means coffee on day 1, tea on day 2 and coffee on day 3. Now look at the counting again and the way the numbers change: 111, 112, 121, 122, 211… It’s really base 2 using 1 and 2 rather than 0 and 1. That’s why there are 8 ways to choose two drinks over three days: 8 = 2^3. Next, note that you use the same number of 1s to count the choices as the number of 2s. There are twelve 1s and twelve 2s, because each number has a mirror: 111 has 222, 112 has 221, 121 has 212, and so on.

Now try the number of ways to choose from three kinds of drink (tea, coffee, orange juice) over two days:


11, 12, 13, 21, 22, 23, 31, 32, 33 (c=9)

There are 9 ways to choose, because 9 = 3^2. And each digit, 1, 2, 3, is used exactly six times when you write the choices. Now try the number of ways to choose from three kinds of drink over three days:


111, 112, 113, 121, 122, 123, 131, 132, 133, 211, 212, 213, 221, 222, 223, 231, 232, 233, 311, 312, 313, 321, 322, 323, 331, 332, 333 (c=27)

There are 27 ways and (by coincidence) each digit is used 27 times to write the choices. Now try three drinks over four days:


1111, 1112, 1113, 1121, 1122, 1123, 1131, 1132, 1133, 1211, 1212, 1213, 1221, 1222, 1223, 1231, 1232, 1233, 1311, 1312, 1313, 1321, 1322, 1323, 1331, 1332, 1333, 2111, 2112, 2113, 2121, 2122, 2123, 2131, 2132, 2133, 2211, 2212, 2213, 2221, 2222, 2223, 2231, 2232, 2233, 2311, 2312, 2313, 2321, 2322, 2323, 2331, 2332, 2333, 3111, 3112, 3113, 3121, 3122, 3123, 3131, 3132, 3133, 3211, 3212, 3213, 3221, 3222, 3223, 3231, 3232, 3233, 3311, 3312, 3313, 3321, 3322, 3323, 3331, 3332, 3333 (c=81)

There are 81 ways to choose and each digit is used 108 times. But the numbers don’t have represent choices of drink in a café. How many ways can a point inside an equilateral triangle jump four times half-way towards the vertices of the triangle? It’s the same as the way to choose from three drinks over four days. And because the point jumps toward each vertex in a symmetrical way the same number of times, you get a nice even pattern, like this:

vertices = 3, jump = 1/2


Every time the point jumps half-way towards a particular vertex, its position is marked in a unique colour. The fractal, also known as a Sierpiński triangle, actually represents all possible choices for an indefinite number of jumps. Here’s the same rule applied to a square. There are four vertices, so the point is tracing all possible ways to choose four vertices for an indefinite number of jumps:

v = 4, jump = 1/2


As you can see, it’s not an obvious fractal. But what if the point jumps two-thirds of the way to its target vertex and an extra target is added at the centre of the square? This attractive fractal appears:

v = 4 + central target, jump = 2/3


If the central target is removed and an extra target is added on each side, this fractal appears:

v = 4 + 4 midpoints, jump = 2/3


That fractal is known as a Sierpiński carpet. Now up to the pentagon. This fractal of endlessly nested contingent pentagons is created by a point jumping 1/φ = 0·6180339887… of the distance towards the five vertices:

v = 5, jump = 1/φ


With a central target in the pentagon, this fractal appears:

v = 5 + central, jump = 1/φ


The central red pattern fits exactly inside the five that surround it:

v = 5 + central, jump = 1/φ (closeup)


v = 5 + c, jump = 1/φ (animated)


For a fractal of endlessly nested contingent hexagons, the jump is 2/3:

v = 6, jump = 2/3


With a central target, you get a filled variation of the hexagonal fractal:

v = 6 + c, jump = 2/3


And for a fractal of endlessly nested contingent octagons, the jump is 1/√2 = 0·7071067811… = √½:

v = 8, jump = 1/√2


Previously pre-posted:

Performativizing the Polygonic

Back to Drac’

draconic, adj. /drəˈkɒnɪk/ pertaining to, or of the nature of, a dragon. [Latin draco, -ōnem, < Greek δράκων dragon] — The Oxford English Dictionary

In Curvous Energy, I looked at the strange, beautiful and complex fractal known as the dragon curve and showed how it can be created from a staid and sedentary square:

A dragon curve


Here are the stages whereby the dragon curve is created from a square. Note how each square at one stage generates a pair of further squares at the next stage:

Dragon curve from squares #1


Dragon curve from squares #2


Dragon curve from squares #3


Dragon curve from squares #4


Dragon curve from squares #5


Dragon curve from squares #6


Dragon curve from squares #7


Dragon curve from squares #8


Dragon curve from squares #9


Dragon curve from squares #10


Dragon curve from squares #11


Dragon curve from squares #12


Dragon curve from squares #13


Dragon curve from squares #14


Dragon curve from squares (animated)


The construction is very easy and there’s no tricky trigonometry, because you can use the vertices and sides of each old square to generate the vertices of the two new squares. But what happens if you use lines rather than squares to generate the dragon curve? You’ll discover that less is more:

Dragon curve from lines #1


Dragon curve from lines #2


Dragon curve from lines #3


Dragon curve from lines #4


Dragon curve from lines #5


Each line at one stage generates a pair of further lines at the next stage, but there’s no simple way to use the original line to generate the new ones. You have to use trigonometry and set the new lines at 45° to the old one. You also have to shrink the new lines by a fixed amount, 1/√2 = 0·70710678118654752… Here are further stages:

Dragon curve from lines #6


Dragon curve from lines #7


Dragon curve from lines #8


Dragon curve from lines #9


Dragon curve from lines #10


Dragon curve from lines #11


Dragon curve from lines #12


Dragon curve from lines #13


Dragon curve from lines #14


Dragon curve from lines (animated)


But once you have a program that can adjust the new lines, you can experiment with new angles. Here’s a dragon curve in which one new line is at an angle of 10°, while the other remains at 45° (after which the full shape is rotated by 180° because it looks better that way):

Dragon curve 10° and 45°


Dragon curve 10° and 45° (animated)


Dragon curve 10° and 45° (coloured)


Here are more examples of dragon curves generated with one line at 45° and the other line at a different angle:

Dragon curve 65°


Dragon curve 65° (anim)


Dragon curve 65° (col)


Dragon curve 80°


Dragon curve 80° (anim)


Dragon curve 80° (col)


Dragon curve 135°


Dragon curve 135° (anim)


Dragon curve 250°


Dragon curve 250° (anim)


Dragon curve 250° (col)


Dragon curve 260°


Dragon curve 260° (anim)


Dragon curve 260° (col)


Dragon curve 340°


Dragon curve 340° (anim)


Dragon curve 340° (col)


Dragon curve 240° and 20°


Dragon curve 240° and 20° (anim)


Dragon curve 240° and 20° (col)


Dragon curve various angles (anim)


Previously pre-posted:

Curvous Energy — a first look at dragon curves