Delving into the core of NURBs, I explain how manipulate the input values to NURBs so you can draw mathematical shapes like hyperboloids.
Earlier in 2014, Carlo Bailey and Lorenzo Villaggi interviewed me about parametricism for the ‘Belief’ issue of Colon. Here is what I had to say.
I expand upon the challenges associated with parametric modelling that I have outlined in this introduction. I first examine the various definitions of parametric modelling and consider how these frame an understanding of what a parametric model is. I go on to reveal the numerous challenges architects have faced when using parametric models in practice. Aggregated together, these accounts reveal an array of problems that tend to be overlooked in many of the discussions around parametric modelling.
I discuss a research method for applying aspects of the software engineering body of knowledge to the creation of various parametric models. I outline criteria for selecting the case studies and I discuss how a variety of quantitative and qualitative metrics can be used to observe parametric flexibility.
I explore the differences between creating a parametric model with a logic programming paradigm compared to creating a model with a more conventional dataflow paradigm. The logic programming paradigm enables the reversal of the parametric process by turning static geometry into a parametric model. However, outside this niche application, logic programming proves to be a difficult modelling interface.
I consider how the principles of structured programming apply to the organisation of parametric models. Splitting models into hierarchies of modules appears to increase the legibility of the models and improve model reuse. Perhaps more importantly, the structure seemed to allow ordinarily pivotal decisions to be made much later in the design process – in some cases, moments prior to construction.
Drawing upon innovations in software engineering Integrated Development Environments (IDEs) to create an interactive programming interface for architects. The interface enables designers to modify their code and immediately see the geometry of the model change. This case study positions the scripting environment itself as a important site of innovation, a site where many programmers have already provided numerous useful innovations.
There is a close relationship between software engineering and parametric modelling. This relationship has implications for how parametric modelling is taught, for how parametric modelling is integrated in practice, and for how we discuss parametric modelling.
A failed attempt to apply parametric modelling to typography as part of my thesis. Includes a discussion of parametric logos, and source files for six parametric fonts in Processing.
A long and incomplete history of parametric modelling. Starting in the nineteenth century with James Dana’s crystal drawings, and ending up in twenty-first century by way of Gaudí, Moretti, Ivan Sutherland’s Sketchpad, and other more recent technological innovations.
Six quotes that begin to expose some of the rarely discussed problems with parametric modelling.
Analysis of 2035 Grasshopper models. A look at the most popular nodes, the unpopular nodes, and the biggest models.
A video tutorial about using Yeti, the live scripting interface for Rhino.
DesignScript is a new programming interface developed by Robert Aish. Its development has been closely guarded and to date there has been almost no publicly accessible information about the project. In this post I uncover what DesignScript is and I speculate on where it might be going.
Yeti is a live programming interface for Rhino. This is the first public release.
An advanced tutorial for squeezing performance out of a Grasshopper model with threading – which doubles as an explanation for why CAD isn’t getting any faster on most multi-core machines.
An early sneak peak at a project I have been working on: live parametric programming for Rhino.
Patrik Schumacher’s comments on my previous blog entry were worthy of a post in and of themselves. So in this post I summarise what they mean for the name of parametricism, for the lack of context to parametricism, for Zaha Hadid being parametric, and other arguments leveled at Schumacher.
Patrik Schumacher recently claimed that parametric design is the successor to modernism. He named the movement parametricism. In this post I explain why Schumacher is wrong and explain how Zaha Hadid Architects are just jumping on the bandwagon. Schumacher responds to this criticism in the comments — his points are well worth reading.
A review of Robert Woodbury’s latest book Elements of Parametric Design. The result of twenty years research into parametric design, it is probably the most significant book on the subject.
A look at the code that powers Grasshopper. User interface is a surprisingly large part of Grasshopper, is interface what defines a CAD tool?
Parametric flexibility is more than being able to do something, it is the ability to actually do it. In this post I describe a recent situation when the parametric model failed me or, alternatively, when I failed the parametric model.
How to make better Grasshopper models: six methods for increasing model speed.
How to make better Grasshopper models: avoid spaghetti through the use of modules.
A method for creating a swarm of points on a surface. Useful for evenly distributing points across a surface without imposing a topological connection between the points.
A method for visualising directed graphs using Processing.
A look at Spreadsheet 2000, a program that tried to better Excel by exposing the parametric relationships in a graph.
The Voussoir Cloud Installation by IwamotoScott Architecture carries on Gaudí and Otto’s tradition of using hanging chain models as form finding tools.
A classification and review of currently available parametric software.
A brief look at the birth of CAD. Ivan Sutherland’s 1962 Sketchpad was the first interactive CAD system, which laid the groundwork for much of what we do today, fifty years later.
A suggestion for how to start programming using Processing.