Dihedral Escherization - Waterloo Computer Graphics Lab

Transcription

Dihedral Escherization - Waterloo Computer Graphics Lab
SIGGRAPH 2002 submission – do not distribute
Dihedral Escherization
Craig S. Kaplan1
1
David H. Salesin1,2
2
University of Washington
Microsoft Corporation
Figure 1 Two examples of dihedral Escherization, each using the goal shapes shown on the left. The first uses a method based on splitting an isohedral tiling in
two; the result is derived from a tiling of isohedral type IH51. The second is based on an extension of Penrose’s aperiodic tiling by kites and darts.
Abstract
search for these interlocking forms was for Escher a lifelong pursuit
and source of both frustration and inspiration.
“Escherization” [5] is a process that finds an Escher-like tiling of
the plane from tiles that resemble a user-supplied goal shape. We
present two forms of dihedral Escherization: algorithms that find
tilings made up of two distinct shapes. The first technique augments the original Escherization algorithm by dividing isohedral
tiles in two using an additional curve; the second reformulates Escherization for Penrose’s aperiodic tiling by kites and darts. We provide parameterizations for these spaces of tilings so that they can be
searched using continuous optimization.
In the SIGGRAPH 2000 conference, Kaplan and Salesin presented
Escherization [5], a method for automatically discovering Escherlike tesselations with tiles that resemble arbitrary user-supplied
shapes. Given an arbitrary goal shape S, their system uses continuous optimization to hunt through a parameterized space of tilings
(the isohedral tilings) in search of a tile shape T that best approximates S. The quality of the approximation is determined via an
efficient polygon comparison metric [1].
The Escherization algorithm they describe is able to find Escherlike tilings that are monohedral, i.e., made up of copies of a single motif. Escher also created many dihedral (two-motif) designs,
which suggests a natural extension to Escherization wherein the
user supplies two goal shapes S1 and S2 , and the algorithm tries
to approximate them simultaneously via shapes T1 and T2 that tile
the plane together.
CR Categories: I.3.5 [Computational Geometry and Object Modeling]: Geometric algorithms, languages and systems; I.3.8 [Computer Graphics]: Applications; J.5 [Arts
and Humanities]: Fine arts; J.6 [Computer-Aided Engineering]: Computer-aided design (CAD)
Keywords: Escher, symmetry, tilings, tesselations, Penrose tiling, optimization
1
Introduction
In this short paper, we present two solutions to the dihedral Escherization problem. The first solution constructs dihedral tilings
by dividing each tile in an isohedral tiling into two non-congruent
shapes. The second constructs aperiodic Escherizations based on
the kites and darts of the famous Penrose tiling. Examples of both
approaches appear in Figure 1, derived from the chicken images on
the left.
The Dutch artist M.C. Escher had a singular gift for incorporating
mathematics into art. His work continues to delight and fascinate,
a mix of paradox and harmony, of whimsy and order. In particular,
he left behind a large collection of ingenious tesselations [8], made
from motifs resembling people, animals, and fantasy creatures. The
2
Escherization using split isohedral tiles
Given a tiling of the plane,1 we say that two tiles T and T 0 are
equivalent if there is a symmetry of the tiling that maps T to T 0 .
This equivalence relation naturally partitions the tiles in a tiling into
1 Kaplan and Salesin [5] give an overview of tiling theory useful for applications like Escherization. Complete information can be found in the reference work of Grünbaum and Shephard [4].
1
SIGGRAPH 2002 submission – do not distribute
transitivity classes. A tiling is called isohedral if all of its tiles belong to one transitivity class. More generally, a tiling with k transitivity classes is called k-isohedral.
The isohedral tilings were the basis for the original Escherization
algorithm. They have a simple combinatorial description that allows for efficient representation and implementation, and they are
flexible enough to express a wide range of tilings, including nearly
all of Escher’s monohedral drawings. Grünbaum and Shephard use
the combinatorial structure of the isohedral tilings to prove that they
fall into 81 types [4, section 6.2]. Kaplan and Salesin [5] exploit
this breakdown by expressing each type as a continuous space over
which optimization can take place, and running simulated annealers
in parallel over all types.
Figure 2 A summary of our process for split isohedral Escherization. On the
left, two goal shapes S1 and S2 are traced from images. Next, the isohedral
tile and splitting path are shown at a late stage in the optimization. The quality
of this configuration is judged by breaking the tile into two shapes T1 and
T2 , which are then compared with S1 and S2 . The optimization attempts to
minimize the value at the right, the maximum of the two comparisons.
Motivated by this approach, we might expect to classify the
2-isohedral tilings into types, and optimize over the space of each
type. Indeed, Delgado et al. provide just such a classification [2].
Unfortunately, they show that there are over a thousand different
2-isohedral tiling types, rendering this approach impractical.
hedral tile yields two polygons T1 and T2 that combine to tile the
plane. As a new objective, we choose to minimize the simple function max(d(S1 , T1 ), d(S2 , T2 )). The optimization process and new
objective function are illustrated in Figure 2.
Although the 2-isohedral tilings themselves are impractical for
dihedral Escherization, the means by which Delgado et al.
enumerate them provides inspiration for our method. Given a
k-isohedral tiling, they show that if a tile is divided into two
sub-tiles via a simple curve, and if that suvdivision is then
carried to all equivalent tiles via symmetries of the tiling,
the result is a new (k + 1)-isohedral
tiling. They refer to this operation as a
“split” of the original tiling. In particular, every split of an isohedral tiling
yields a 2-isohedral tiling. The converse is not true; the tiling on the
right is 2-isohedral, but cannot be derived from an isohedral tiling via a
split operation. Nevertheless, split isohedral tilings are sufficiently rich to
permit successful dihedral Escherizations. Escher himself used a similar splitting approach in his layman’s theory to create two-motif tilings [8], although he placed restrictions on where the splitting path could start and end, with the
aim of preserving the colouring properties of the underlying tiling.
Let S10 and S20 denote reflections of S1 and S2 . To find the best
split isohedral tiling corresponding to two goal shapes S1 and S2 ,
we must run the Escherization algorithm twice: once with S1 and
S2 , and once with S1 and S20 (or S10 and S2 ). Although the shape
comparison metric is insensitive to translation and rotation, it does
distinguish between a polygon and its reflection. It might happen
that S1 and S2 interact more favourably if one is reflected.2
Figure 5 shows some examples of Escherization using split isohedral tiles. One might guess that because of the need to match two
goal shapes simultaneously, dihedral Escherization would have a
lower success rate than monohedral Escherization. We have found
that the additional degrees of freedom offered by the splitting edge
more than compensate for the added complexity of the problem,
and in fact success comes more often in the dihedral case.
3
Escherization using Penrose tiles
The best-known dihedral tilings are probably the Penrose tilings [4,
section 10.3]. The kite and dart (shown at the top of Figure 4), together with some simple matching conditions on their edges (as
given by Grünbaum and Shephard [4, page 539]), form an aperiodic tile set: if copies of the two tiles are used to cover the plane in
a way that obeys the matching rules, the resulting tiling will necessarily be aperiodic – i.e., it will have no translational symmetries.
We represent split isohedral tilings as an extension to the tiling representation given by Kaplan and Salesin. We augment the base representation with a piecewise linear splitting path, along with two
real-valued parameters c and ∆ that control where on the tile’s
boundary the splitting path should begin and end. Given some arbitrary parameterization γ : [0, 1] → R2 , a function that describes
the tile’s boundary as a fraction of arclength, the endpoints of the
path are computed as γ(c + ∆) and γ(c − ∆), where values are
taken modulo 1. The path, which is stored in a normalized coordinate system, is transformed to run between those two endpoints.
The combination of the tile and the splitting path engenders two
shapes T1 and T2 in a straightforward way.
Despite a lack of global translational symmetry, Penrose tilings
still exhibit a high degree of regularity and are quite popular in
the creation of mathematical art and ornament [3]. Penrose himself adapted his kites and darts to create a whimsical arrangement
of birds [6], very much in the style of Escher. Unfortunately, Escher passed away a few years before Penrose unveiled his aperiodic
tilings. It seems likely that Escher would have enjoyed experimenting with Penrose’s tiles.
The parameterized space of a tiling type is easily augmented with
dimensions for c, ∆, and the locations of the splitting path’s control
points, creating a new space suitable for continuous optimization.
We use the same continuous simulated annealing algorithm [7, section 10.9] as was used in the original Escherization system.
In light of Penrose’s bird tiling, it is clear that the kite and dart are
merely the simplest examples of a parameterized family of related
tile shapes. As with the isohedral tilings, we provide a parameterization of this family suitable for optimization. The parameterization
expresses the shapes of the generalized kite and dart in terms of two
components: the positions of the tiling vertices and the shapes of the
We must also modify the function being minimized to handle two
goal shapes instead of just one. In the monohedral case, the current
candidate tile is converted to an outline T and compared to the goal
shape S using the polygon comparison metric of Arkin et al. [1].
The optimization makes the tile resemble the goal shape by minimizing d(S, T ), the distance from S to T under this metric. In the
dihedral case, we have two goal shapes S1 and S2 , and the split iso-
2 Note that only the relative parity matters; the flexibility of the isohedral
tilings guarantees that (S1 , S2 ) is equivalent to (S10 , S20 ), and that (S10 , S2 )
is equivalent to (S1 , S20 ).
2
SIGGRAPH 2002 submission – do not distribute
A = (0, 0)
π
, sin
B = (cos 10
√
π
10 )
C = (0, 1+2 5 )
π
, sin
D = (− cos 10
E = (0, −1)
π
10 )
π
π
F = A + r1 (cos( 10
+ θ1 ), sin( 10
+ θ1 ))
7π
+
θ
),
sin(
G = B + r2 (cos( 7π
2
10
10 + θ2 ))
π
π
H = C + r1 (cos(θ1 − 10
), sin(θ1 − 10
)
,
v
)
I = rotate(C, − 2π
4
5
J = rotate(C, − 2π
5 , v3 )
K = rotate(A, − 4π
5 , v3 )
L = rotate(A, − 4π
5 , v2 )
Figure 3 An illustration of how a tiling vertex parameterization can be derived for the Penrose kite and dart. The original edges are modified using
Grünbaum and Shephard’s edge matching conditions [4, page 539]. When adjacent edges coincide, they are removed, displacing the tiling vertices between
the edges. The kite and dart each have one unconstrained tiling vertex. The
others are all implied by the original matching conditions.
edges that join them. To our knowledge, no such explicit parameterization has previously been given.
π
M = A + r2 (cos( π
2 + θ2 ), sin( 2 + θ2 ))
π
π
), sin(θ1 − 10
))
N = D + r1 (cos(θ1 − 10
7π
+
θ
),
sin(
+
θ
O = E + r2 (cos( 7π
2
2 ))
10
10
P = rotate(E, − 2π
5 , v4 )
Q = rotate(E, − 2π
5 , v3 )
R = rotate(A, − 4π
5 , v3 )
S = rotate(A, − 4π
5 , v2 )
Grünbaum and Shephard show that the matching conditions on the
edges of the kite and dart can be maintained by replacing the edges
with pairs of interlocking curves. As shown in Figure 3, we can
discover new tiling vertices by modifying the edges so that portions of the tile shapes collapse to curves. Although the tiles could
be drawn without revealing these collapsed regions, the degeneracy
would cause trouble in the shape comparison algorithm. Instead, we
remove the denegerate parts of the tile boundary, effectively introducing new tiling vertices.
Figure 4 A tiling vertex parameterization for generalized Penrose kites and
darts, controlled by four real-valued parameters r1 , θ1 , r2 , and θ2 . The vertices are enumerated in counterclockwise order starting at A. The function
rotate(p, θ, q) rotates point q by angle θ about point p.
Because of the irregular arrangement of tiles in a Penrose tiling,
different tiles will have tiling vertices (points in the plane that lie
on the boundaries of at least three tiles) at different locations along
their boundaries. However, without loss of generality we can provide a parameterization over the union of all possible tiling vertices
found when the kites and darts are elaborated over the plane. It
follows from the matching conditions that each tile has ten tiling
vertices, determined by four real-valued parameters. Formulae for
the positions of the vertices are given in Figure 4.
an additional tiling type. A similar method could also potentially
be applied to other aperiodic tilings, such as those of Ammann [4,
section 10.4].
Acknowledgments
The chicken and tractor images were taken from www.
c
freefoto.com (FreeFoto.com).
The Rembrandt portraits are
from Connecticut College’s Wetmore Print Collection (http://
www.conncoll.edu/visual/).
Taking inspiration from the use of incidence symbols in isohedral
tilings [4, section 6.2], the possible edge shapes can be specified
by labeling the edges around each tile and indicating matching
rules for the labels. The edges of the kite and dart can be labeled
abcdaefghd and ghefgcdabf respectively, where the enumerations
start at the edges marked with arrows in Figure 4. To enforce matching between adjacent tiles, we require that the pairs (a, d), (b, h),
(c, e), and (f, g) interlock. In effect, a given kite and dart will only
have four non-congruent edge shapes between them.
References
[1] E. M. Arkin, L. P. Chew, D. P. Huttenlocher, K. Kedem, and J. S. B. Mitchell. An
efficiently computable metric for comparing polygonal shapes. PAMI(13), pages
209–216, 1991.
The edge shapes, combined with the four parameters controlling
the tiling vertices, yield a space for continuous optimization. As
with the split isohedral case, we optimize over this space, attempting to minimize the maximum of the two shape comparisons. Note that this parameterization cannot in general represent both a particular kite and dart and their reflections, and
that the kite and dart are fundamentally different shapes. For
these reasons, given two goal shapes S1 and S2 and their reflections S10 and S20 , we must optimize for the eight combinations
{(Sj , Sk ), (Sj0 , Sk ), (Sj , Sk0 ), (Sj0 , Sk0 )}j,k∈{1,2},j6=k .
[2] Olaf Delgado, Daniel Huson, and Elizaveta Zamorzaeva. The classification of
2-isohedral tilings of the plane. Geometricae Dedicata, 42:43–117, 1992.
[3] Andrew Glassner. Andrew glassner’s notebook: Penrose tiling. IEEE Computer
Graphics & Applications, 18(4), July – August 1998. ISSN 0272-1716.
[4] Branko Grünbaum and G. C. Shephard. Tilings and Patterns. W. H. Freeman,
1987.
[5] Craig S. Kaplan and David H. Salesin. Escherization. Proceedings of SIGGRAPH
2000, 2000.
[6] Roger Penrose. Escher and the visual representation of mathematical ideas. In
H.S.M. Coxeter et al., editor, M.C. Escher: Art and Science, pages 143–157. Elsevier Science Publishers B.V., 1986.
Two Escherized Penrose tilings are given in Figure 6. In general, it
is much more difficult to discover satisfactory Escherizations using
Penrose kites and darts. The range of possible tile shapes is limited
and somewhat peculiar. More obviously, there is only one type of
Penrose tiling, whereas with the split isohedral tilings we have the
luxury of searching over many tiling types for the one best suited to
a given pair of goal shapes. A natural extension to this work would
be to incorporate a parameterized version of Penrose’s rhombs as
[7] William H. Press, Saul A. Teukolsky, William T. Vetterling, and Brian P. Flannery.
Numerical Recipes in C: The Art of Scientific Computing (2nd ed.). Cambridge
University Press, 1992. ISBN 0-521-43108-5. Held in Cambridge.
[8] Doris Schattschneider. M.C. Escher: Visions of Symmetry. W.H. Freeman, 1990.
3
SIGGRAPH 2002 submission – do not distribute
Strange ’Tractors (IH28)
Gödel, Bach (Braided):
an Eternal Escherization (IH2)
Pen/Rose Tiling (IH1)
Rembrandt and Mrs. van Rijn (IH1)
Figure 5 Examples of dihedral Escherization using the split isohedral tile method.
Dogs and Cats Living Together
Guitars and Pianos
Figure 6 Examples of dihedral Escherization using Penrose kites and darts. Because of the more limited search space, kites and darts enjoy fewer successful
Escherizations than do split isohedral tilings.
4