What does it mean to have a new modeling software for design that allows scientists, engineers and designers to specify their actions by drawing shapes rather than by writing scripts? What is the difference between a shape you see and the way it is currently recorded in the database of your computer? What does it mean to program with shapes?
The Shape Machine is a new computational technology that fundamentally redefines the way shapes are represented, indexed, queried and operated upon. Its foregrounding of visual rules (shape rules drawn in a 2D or 3D modeling system) over symbolic rules (instructions defined in some programming language) 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.
The Shape Machine is developed at the Shape Computation Lab at the School of Architecture, College of Design, in collaboration with the Schools of Mathematics and Interactive Computing at the Colleges of Science and Computing at Georgia Institute of Technology. The current prototype of the Shape Machine is a plug-in implemented in Python within the modeling software Rhinoceros 5 by Robert McNeel and Associates. The core concepts of Shape Machine include three main parts: a) a new implementation of the reduction rules, a set of algorithms that provide a unique description to every shape in terms of the smallest number of maximal elements that specify it; b) a new implementation of shape recognition for all shapes consisting of straight lines, arcs and their combinations under isometry, similarity, affinity and linearity transformations; and c) a new implementation of a rule compiler of shape modification for all shapes consisting of straight lines, arcs and their combinations under all isometry, similarity, affinity and linearity transformations. By combining these three parts, the Shape Machine is able to compile shape rules drawn by users into an executable form and execute them to carry forward a shape computation.
The Shape Computation Lab explores how the visual nature of shape can be formally implemented with new software technologies to assist seeing and doing in design in profoundly new ways.
The way that the lab approaches modeling in design is radically different from past and current approaches including all current geometric, parametric and generative modeling approaches in computer-aided design. The work builds on the shape grammar formalism and the ways it has theorized a new way of computing that foregrounds the visual over the symbolic, but significantly extends it in two ways:
a) It provides a new formal description, the shape signature, a uniform characterization of shape that can be used to calculate and visually represent all possible shapes in CAD parametric models; and
b) It offers a general solution on the problem shape matching in CAD systems, for all shapes made up for lines, arcs and conics, and applies the formalism in the Shape Machine, a new CAD plugin developed in the lab from scratch.
Current projects deal with design automation, visual programming, intelligent CAAD systems, formal specification of shape and style, all foregrounding the visual - and computational - basis for design in spatial systems. The work draws upon relations with other disciplines at Georgia Tech including mathematics, computer science, cognitive science and philosophy.