Hostname: page-component-74656f9884-rdgjk Total loading time: 0 Render date: 2026-11-07T00:39:53.760Z Has data issue: false hasContentIssue false

From shapes to topologies and back: an introduction to a general parametric shape grammar interpreter

Published online by Cambridge University Press:  09 May 2018

Thomas Grasl*
Affiliation:
SWAP Architects, Austria
Athanassios Economou
Affiliation:
Georgia Institute of Technology, Atlanta, Georgia, USA
*
Author for correspondence: Thomas Grasl, Neustiftgasse 32-34/2/8, 1070 Vienna, Austria. E-mail: tg@swap-zt.com
Rights & Permissions [Opens in a new window]

Abstract

The shape grammar formalism has been discussed theoretically extensively. Recently there has been increased activity in implementing shape grammar interpreters, yet there is a lack of implementations that support parametric rules and emergence. Here the structure of a general parametric shape grammar interpreter is discussed in detail. The interpreter is based on graph grammars. It supports emergence, parametric rules, and numerous types of geometric objects. The shape grammar engine, an agent-based rule selection system and several implementations based on the engine are discussed.

Information

Type
Regular Articles
Copyright
Copyright © Cambridge University Press 2018 
Figure 0

Fig. 1. The components of GRAPE.

Figure 1

Fig. 2. A point node (a) and a labeled point (b).

Figure 2

Fig. 3. Part-relation graph of two overlapping squares. The geometry is shown dashed for convenience.

Figure 3

Fig. 4. Different embeddings of the search pattern that will find the original squares (a) as well as the emergent square (b) of the graph in Figure 1.

Figure 4

Fig. 5. A rule with LHS symmetry of D4 (a), and the eight possible ways to apply the rule to a square (b).

Figure 5

Fig. 6. A circular arc with two intermediate points I1 and I2 as well as a breakpoint B.

Figure 6

Fig. 7. (a) Part-relation graph of an arc and a circle, and (b) search pattern for an arc segment. The geometry is shown dashed for convenience.

Figure 7

Fig. 8. Derivation using circles and emergent arcs.

Figure 8

Fig. 9. A Fröbel exercise using oblongs based on faces.

Figure 9

Fig. 10. A box node along with a symmetry construct (a) and a wall node based on a line segment (b).

Figure 10

Fig. 11. Hierarchy of edges.

Figure 11

Fig. 12. A restricted search pattern.

Figure 12

Fig. 13. Variables and search patterns in the LHS.

Figure 13

Fig. 14. Variables and parameters in the RHS.

Figure 14

Table 1. Possible mappings and what they constrain

Figure 15

Fig. 15. Ambiguous parametric rule (a) and its application to a rectangle as (b) x → x + y and (c) x → x + t(x).

Figure 16

Fig. 16. A rule with LHS symmetry of D4 and overall symmetry of D2 (a), and the two possible ways to apply the rule to a square (b).

Figure 17

Fig. 17. The copy and move square diagonally rule as drawn in the visual editor. Labels are for reference only.

Figure 18

Fig. 18. Common sensor–actuator agent design.

Figure 19

Fig. 19. Exemplary results for probabilistic agents using (a) naïve randomness and (b) weighted randomness.

Figure 20

Fig. 20. Pools for the sequenced and weighted random selection.

Figure 21

Fig. 21. All solutions for a 5 × 4 grid with a T-shaped space and five spaces in total.

Figure 22

Fig. 22. Some results from a rule-based agent.

Figure 23

Table 2. Geometries and objects supported in various implementations of the Grape core

Figure 24

Fig. 23. Some designs in the rosette language (Hong Tzu-Chieh). (a) Designs showcasing threefold, fourfold, fivefold, and sixfold regular symmetries. (b) Designs featuring polyrhythmic fourfold symmetry.

Figure 25

Fig. 24. Some designs in the checkerboard lattice language (Stephanie Douthitt).

Figure 26

Fig. 25. Some designs in the Mughal garden language (Nirvik Saha).

Figure 27

Fig. 26. Some designs in the ad quadrant language (Abigail Smith). All designs use the ad quadrant subdivision rules in the schema x → x + ∑t(x).

Figure 28

Fig. 27. Some designs in the MCE language (Kelsey Kurzeja).

Figure 29

Fig. 28. A set of six sectional axonometric models of Miesian courthouse designs (James Park). All models feature a total of 24 courtrooms in various arrangements. Models (a–c) showcase designs that are found in the archives of the design process. Models (d–f) showcase possible hypothetical designs in the language.