Mark Dow

Geek art

Simple recursive systems and fractal patterns

Various "Squeel" tessellations and related motifs, notes

Horizontal Squeels

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.

zig 1 motif zig 5 motif zig 8a motif zig 9 motif
symmetry 2 motif
a
symmetry 3 motif
b
symmetry 3 motif
c
symmetry 3 motif
d
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.

zig 1 checkerboard tesselation
a
zig 5 checkerboard tesselation
b
zig 8a checkerboard tesselation
c
zig 9 checkerboard tesselation
d
checkerboard tesselation pattern
e
Figure 2. Checkerboard tessellations of motif pairs in Fig. 1, and tessellation the pattern (e). Each region spans two motifs.

zig 1 Thue-Morse tesselation
a
zig 5 Thue-Morse tesselation
b
zig 8a Thue-Morse tesselation
c
zig 9 Thue-Morse tesselation
d
Thue-Morse tesselation pattern
e
Figure 3. Thue-Morse tessellations of motif pairs in Fig. 1, and the tessellation pattern (e). The regions span one, two and three motifs.

zig 1 random tesselation
a
zig 5 random tesselation
b
zig 8a random tesselation
c
zig 9 random tesselation
d
random tesselation pattern
e
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):

Squeel motif symmetry 1 motif
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.

Squeel checkerboard tesselation
a
Squeel Thue-Morse tesselation
b
Squeel random tesselation
c
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 );   )

diagonally oriented square tesselation
Figure 7. Rotating these patterns by pi/4 radians softens the perception of square vertex allignments and enhances the motif contour allignments.

Figure 8Isentropic 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.
Isentropic Squeels

    [ 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).

Squeel weave motifs, test
Figure 9. Squeel weave motifs

Squeel motifs including pi rotations
a
symmetry 5 motif
b
four symbol Squeel tesselation
c
four symbol Squeel tesselation
d
four symbol Squeel tesselation
e
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 equiluminance Squeel motifs
4x4 px.
a
8x8 equiluminance Squeel motifs
8x8 px.
b
16x16 equiluminance Squeel motifs
16x16 px.
c
32x32 equiluminance Squeel motifs
32x32 px.
d
Figure 11.  These motif pairs have an equal number of black and white pixels.

36x36 equiluminance Squeel motifs
36x36 px.
36x36 equiluminance grayscale Squeel motifs
36x36 px.
a
72x72 equiluminance Squeel motifs
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):

Squeel pool animation, link to

    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).