Abstract

AbstractA shape grammar is a formal rewriting system for producing languages of shapes. While initially defined to operate over line segments and labeled points, the theory of shape grammars has numerously been extended to include other spatial and non-spatial entities, including, planar segments and volumes, some types of curves, weights, colors and descriptions. Over the years, also a number of shape grammar interpreters have been developed, implementations that support the specification and application of shape rules. However, each of these implementations has adhered to a single shape grammar formalism, even if the exact formalism may differ from one implementation to another. This paper reports on the development and application of a shape grammar interpreter supporting multiple shape grammar formalisms. This is achieved in two ways, first, by supporting a variety of representational structures as compositions of basic data types, and second, by providing two alternative matching mechanisms for spatial elements, a non-parametric and a parametric-associative mechanism. Together, this provides for a flexible and extensible interpreter for the specification and application of shape rules, which has been implemented in the Python programming language and is accessible from Rhino and Grasshopper.KeywordsShape grammarSortal grammarMulti-formalismShape grammar interpreter

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.