ModeLab Grasshopper Primer Third Edition by Gil Akos & Ronnie Parsons

Page 9

I.2 Grasshopper - an Overview Grasshopper is a visual programming editor developed by David Rutten at Robert McNeel & Associates. As a plug-in for Rhino3D, Grasshopper is integrated with the robust and versatile modeling environment used by creative professionals across a diverse range of fields, including architecture, engineering, product design, and more. In tandem, Grasshopper and Rhino offer us the opportunity to define precise parametric control over models, the capability to explore generative design workflows, and a platform to develop higher-level programming logic – all within an intuitive, graphical interface. The origins of Grasshopper can be traced to the functionality of Rhino3d Version 4’s “Record History” button. This built-in feature enabled users to store modeling procedures implicitly in the background as you go. If you lofted four curves with the recording on and then edited the control points of one of these curves, the surface geometry would update. Back in 2008, David posed the question: “what if you could have more explicit control over this history?” and the precursor to Grasshopper, Explicit History, was born. This exposed the history tree to editing in detail and empowered the user to develop logical sequences beyond the existing capabilities of Rhino3D’s built in features. Six years later, Grasshopper is now a robust visual programming editor that can be extended by suites of externally developed add-ons. Furthermore, it has fundamentally altered the workflows of professionals across multiple industries and fostered an active global community of users. This primer focuses on Foundations, offering the core knowledge you need to dive into regular use of Grasshopper and several on-ramps to how you might go further within your own creative practice. Before diving into the descriptions, diagrams, and examples supplied hereafter, let’s discuss what visual programming is, the basics of the Grasshopper interface and terminology, as well as the “live” characteristics of the viewport feedback and user experience. Visual Programming is a paradigm of computer programming within which the user manipulates logic elements graphically instead of textually. Some of the most well-known textual programming languages such as C#, Visual Basic, Processing – and more close to home for Rhino – Python and Rhinoscript require us to write code that is bound by language-specific syntax. In contrast, visual programming allows us to connect functional blocks into a sequence of actions where the only “syntax” required is that the inputs of the blocks receive the data of the appropriate type, and ideally, that is organized according to the desired result – see the sections on Data Stream Matching and Designing with Data Trees. This characteristic of visual programming avoids the barrier to entry commonly found in trying to learn a new language, even a spoken one, as well as foregrounds the interface, which for designers locates Grasshopper within more familiar territory.

This image show the process for drawing a sine curve in python and in Grashopper.

8

Introduction


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.