Shape Computation Lab

Shape Machine

🞩

01. A query of a triangle in Shape Machine under isometry transformations. (a) Query; (b) initial shape; (c) One of the four matches of the identity rule under isometry transformations.

02. A query of a k–shape in Shape Machine under isometry transformations. (a) Query; (b) initial shape; (c) One of the eight matches of the identity rule under isometry transformations.

03. A query of a triangle in Shape Machine under similarity transformations. (a) Query; (b) initial shape; (c) One of the four matches of the identity rule under similarity transformations.

04. A two-step query of a k–shape in Shape Machine under similarity transformations. (a) Query; (b) initial shape; (c) One of the eight infinite types of matches of the identity rule under similarity transformations.

05. A query of a triangle in Shape Machine under affinity transformations. (a) Query; (b) initial shape; (c) One of the four matches of the identity rule under affinity transformations

06. A query of two L-shapes in Shape Machine under affinity transformations. (a) Query; (b) initial shape; (c) One of the eight matches of the identity rule under affinity transformations.

07. A query of an arrangement of an L-shape and a line in Shape Machine under linearity transformations. (a) Query; (b) initial shape; (c) One of the 24 matches of the identity rule under linearity transformations.

08. A query of an arrangement of arcs in Shape Machine under isometry transformations. (a) Query; (b) initial shape; (c) One of the six matches of the identity rule under isometry transformations

09. A query of a complex arrangement of arcs in Shape Machine under similarity transformations. (a) Query; (b) initial shape; (c) One of the six matches of the identity rule under similarity transformations.

10. A construction in Shape Machine using a single shape rule (LHS → RHS) in the schema x →∑T(y) under similarity transformations. (a) Shape Rule; (b) One of the eight possible matches of the RHS shape under similarity transformations; (c) Final design after the parallel execution of all eight matches.

11. A construction in Shape Machine using a single shape rule (LHS → RHS) in the schema x →∑T(y) under isometry transformations. (a) Shape Rule; (b) One of the 16 possible matches of the RHS shape under isometry transformations; (c) Final design after the parallel execution of all 16 matches.

12. A construction in Shape Machine using a single shape rule (LHS → RHS) in the schema x →∑T(y) under isometry transformations. (a) Shape Rule; (b) One of the 32 possible matches of the RHS shape under isometry transformations; (c) Final design after the parallel execution of all 32 matches.

13. The Celtic knot grammar: (a) Two shape rules substituting a curve with a loop in two handed versions; (b) One of the eight possible matches of the shape T(x) under a similarity transformation T and its corresponding replacement of the shape T(y); (c) a design after the serial execution of four shape rules.

14. A Celtic knot grammar: Modification stage. (a) Two shape rules signifying tying and untying a loop; (b) One of the two possible matches of the untying shape rule; (c) a design after the serial execution of two shape rules.

Kurt Hong and Athanassios Economou

2019

 

Keywords: Shape Grammar Interpreter; Shape Grammars; Computer-Aided Design; Design Automation; Visual Indexing; Algebras of Shape

The Shape Machine is a new computational technology that fundamentally redefines the way shapes are digitally represented, indexed, queried and operated upon. By allowing users to draw shape rules rather than write them in a programming language, it provides a robust and disruptive technology for engineers, computer scientists, designers, students and educators, and in general academics and professionals who use drawings and visual models to develop and communicate their ideas. Significantly, the Shape Machine is the first software that manages to solve the subshape recognition problem in vector graphics and the first one to perform the operations with shapes envisioned by the academic community since the early seventies.

 

The current working prototype is implemented in Python as a plug-in within Rhinoceros 5 from Robert McNeel and Associates and includes three proprietary modules: shape representation, shape recognition, and shape modification, all for straight lines and arcs under Euclidean transformations. The software allows users to program custom functions by drawing shapes instead of writing code in a programming language.

 

The intellectual property of the Shape Machine software technology is solely originated by and contained within the team consisting of Kurt Hong, Athanassios Economou, James Park and Heather Ligler, and all technical specifications pertaining to the maximal line representation of shape are protected under a pending patent application at the US Patent and Trademark Office (USPTO) – “Shape Computational Technology”, No. 62/831,919. The provisional application was filed by Troutman Sanders LLP on behalf of the inventors and the Georgia Tech Research Corporation (GTRC) and it was officially received by USPTO on April 10th, 2019.