Mark
Dow
Geek
art
Simple recursive systems
and fractal patterns
Various
"Squeel" tessellations and related motifs, notes

Equiluminance
motifs
Squeel pool motion illusion
Ted Bell and I experimented (2/8/08) with these
motif pairs (below, left and right
halves), which have the common property that the motifs are inversions
and rotations by pi/2 radians of each other and are all identical after
a pi radian rotation. All but the third (Fig. 1c)
have matching colors on top/bottom and left-right edges. When tiled
together they result in regions (closed boundaries) of different
extents, depending on the tessellation pattern.
Figure
1. Pairs of
related motifs and their symmetries. Each half of every pair is the
luminance inverse of the other half, rotated by pi/2 radians. All
motifs are symmetric with respect to a pi radian rotation. The motifs
in a are symmetric about
both the vertical and horizontal axes, but the motifs in b, c,
and d are symmetric about only
one of these axes.
A nice aspect of these motifs is that they are in a
sense universal: a regular square tiling using any combination of
motifs will result in contiguous
regions with related boundaries. The motif properties that allow
arbitrary combinations are matching colors at boundaries, at the
top-bottom and at the left-right. The motif pair in Fig 1. c
does not strictly match at these boundaries, but the obtuse
angles make for a near match: with a slight modification they do
match, as in Fig 1. d. Clifford
Pickford, in "A
Passion for Mathematics" calls patterns with this class of motifs
"Eschergrams".
Each pair of motifs is composed of an equal
fraction of black and white because the luminance values of each half
are inverses
of each other. Tesselations that use equal numbers of each motif will
also have an equal
fraction of black and white.
Each single motif is not composed of an equal
fraction of black and white, but it is not far off. See equiluminance motifs below.
Figure
2. Checkerboard tessellations of motif pairs in Fig. 1, and tessellation the pattern
(e). Each region spans two
motifs.
Figure
3. Thue-Morse tessellations
of motif pairs in
Fig. 1,
and the tessellation pattern (
e).
The regions span one, two and three motifs.
Figure
4. Random tessellations of motif pairs iin
Fig. 1, and tessellation the pattern
(
e). These regions span
any number of motifs.
MATLAB commands:
>> L_system_tiling(
'', 5, 2, 1, 0, 'Symmetry_motif_3.png', 0, [0 1; 1 0], [0 1; 1 0] );
>> L_system_tiling(
'', 5, 2, 1, 0, 'Symmetry_motif_3.png', 0, [0 1; 1 0], [1 0; 0 1] );
>> L_system_tiling(
'', 5, 2, 1, 0, 'Symmetry_motif_3.png', 0, [-1 -1; -1 -1] );
[ To Do: What do tessellations that use 1-bit images as patterns look
like; can feature boundaries be distinguished even though the luminance
fraction is close to 1/2? What are motifs like this where each motif is
exactly 50-50% black and white? Try this on "1-bit Mona"
with a very
small (8x8px.?) motif.]
This led to choosing a smoother boundary, suggested
by the serpentine shape of the chiral motifs (b, c,
and d):
Figure
5. The primary outlines of this "Squeel" (square eel)
motif are similar to Fig 1. b,
c, and d, but the pi
radian rotational symmetry is slightly broken; the "eel" head and tail
are differentiated.
An advantage of using this motif is the sinuous
regions extend
naturally, with from zero to many "humps". Note the close match between
these motifs and the binary logarithmic spirals used
to construct "Redundant Quadrapii".
The artwork could be improved by someone with some
talent for natural
history drawings. Depending on the scale, the "fins" don't look much
like fins, partly because the body has a strong outline that separated
them visually. The ray structure of the fins should be emphasized, but
not too much because the bottom "fins" point in an unnatural direction
-- forward instead of backward. [ To Do: ] Can this problem be solved
by using twice as many motifs, with some fin rays in the opposite
direction? The assymetry of a body section (the angle is about pi/4
rad. at motif boundaries, but about pi rad. at center [To Do: quick
diagram] ) suggests a compound curve out of the image plane. Some
highlighting and/or shading to emphasize depth, consistent with
curvature and a simple weave motif, would be nice.
Figure
6. Tesselations of the "Squeel" motif in
Fig. 5 with checkerboard (
a), Thue-Morse (
b) and random (
c) patterns.
( MATLAB commands:
>> L_system_tiling(
'CB', 3, 2, 1, 0, 'Squeel_motif_8.png',
0, [0 1; 1 0], [0 1; 1 0] );
>> L_system_tiling( 'TM',
3, 2, 1, 0, 'Squeel_motif_8.png', 0, [0 1; 1 0], [1 0; 0 1] );
>> L_system_tiling( 'RN',
3, 2, 1, 0, 'Squeel_motif_8.png', 0, 0 ); )
Figure
7. Rotating these
patterns by pi/4 radians softens the perception of square vertex
allignments and enhances the motif contour allignments.
Figure 8. Isentropic
Squeels
is a tessellation that combines the three rotated
patterns: random at top, Thue-Morse in the middle and checkerboard
at
bottom (and some blending between divisions).
The organization of Fig. 8 is
reminiscent of the boundary across a phase change, either from
crystalline to liquid or crystalline to glass. It would be nice to
animate these Squeels and apply energetic rules to each "cell". White
and black could conserve energy, and the distribution of lengths and
numbers of each could be skewed. Short Squeels hungry, long Squeels
more likely to be split. Perhaps dispense with the fins, leaving only
cylindroids on a neutral background, or make them smaller and more
streamlined. |

|
[ A related aside: Shape memory
alloys, like Nitinol,
use a meta-stability between two crystal structures. The properties are
"...due to a temperature-dependent martensitic
phase transformation from a low-symmetry to a highly symmetric
crystallographic structure. Those crystal structures are known as martensite
(at lower temperatures) and austenite
(at higher temperatures). Austenite is body centered cubic, but bending
causes the martensite phase, a tetrahedral crystal structure, by
"displacive transformation" (not diffusion). Above some threshold
temperature the stable austenite phase is energetically accessible.]
[ To Do: I cheated using a Thue-Morse pattern
between checkerboard and random. How does one
shuffle a checkerboard, one or two elements at a time, to become
random? Set a random member to a random value, visiting each member
only once?]
The fade to black at the edges of Fig. 8
is fine -- it looks like it is stretched over a half round edge. [ To
Do: ] It would fit with the theme to do another pattern with Squeels
wrapping around to neighbors at the edges. This would require using
several pi/2 radian bend motifs, as well as pi radian rotated motifs
(see
below). Maybe an octagonal outer boundary. Also use simple weave motifs
(Fig 9).
Figure
9. Squeel weave motifs
Figure
10. By including
motifs that are pi radian rotations, four symbol systems can form
patterns that include inverted orientations of Squeels (
c), or two headed and two tailed
Squeels (
d and
e).
MATLAB command for e?:
>> L_system_tiling(
'', 4, 4, 1, 0, 'Squeel_4motif2_6.png', 0, [0 1; 3 2], [1 2; 0 3], [2
3; 1 0], [3 0; 2 1] ); )
[ To Do: Are there nice (clearly visible) discrete similarity tilings
using these motifs? Squeels that spiral outward?]
Equiluminance motifs
Part of the visual appeal of the patterns above has
to do with the
local average luminance -- there is very little luminance difference in
the patterns that guide the eye as to where motifs are repeated or are
alternating. Serial inspection must be used to distinguish the length
of the Squeels, particularly if the motifs are very small. [ To Do: For
example, an offset boundary in a checkerboard pattern.]
Small modifications can be made to these motifs such
that each motif
has luminance values that are symmetric about some central value.

4x4 px.
a |

8x8 px.
b |

16x16 px.
c |

32x32 px.
d |
Figure 11. These motif pairs
have an equal number of black and white pixels.

36x36 px.

36x36 px.
a |

72x72 px.
b |
Figure 12. Pinwheel squeel motifs having
symmetric luminance.
[ To Do: Grayscale tiny Squeel motifs, bars, spatio-visual properties,
1-bit image replacements.]
Squeel pool motion
illusion
While experimenting with color to texture
replacement with these
motifs, I came across an apparent motion illusion, "Squeel pool" is a
short looping animation that demonstrates the effect. (Click on this
thumbnail for the full GIF animation. Your browser window must be
larger than 650 x 650 pixels for it to display properly):
The animation is four
frames long, and two frames are the luminance inversions of the other
two.
On some browsers their are intermittent pauses and skipping of frames
which extinguishes apparent motion. Best if loaded into an application
that can run the animation smoothly.
In two of the frames
there is a predominately black/white "edge" at texture boundaries, and
this certainly has something to do with it. See the "Lucy
in the Sky demonstration"
for a simplified version of the effect where the motion rocks back and
forth. This one continues the apparent motion in one direction using
the inverse luminance for half of the full cycle.
Also see Edge
contrast motion illusion examples, which depend on the same effect.
im = imread( 'Sqeel_3x3_BW_8o10.png');
im = im2/255;
L_system_tiling( '', 1, 2, 1, 0, 'HV_bars_motif.png', 0, im ); ]
------------------------------------
There are no restrictions on use of the images and animations on this
page. Claiming to be the originator of the material,
explicitly or implicitly, is bad karma. A link (if appropriate), a note to
dow[at]uoregon.edu, and credit are appreciated but not required.
Comments are welcome (dow[at]uoregon.edu).