Parametric Modeling with Grasshopper

30 downboots 7 5/7/2025, 11:57:12 PM baharmon.github.io ↗

Comments (7)

FormFollowsFunc · 14h ago
Am I wrong in thinking that Grasshopper is procedural modeling and not parametric modeling? Parametric modeing is used in software like Solid Works where you don’t have nodes but have parameters, a constraint system and construction history. Solid Works was developed in the 90s while Grasshopper came out in 2007. Another is example is Pro/Engineer from Parametric Technology Company (PTC) which came out in 1988. Patrik Schumacher, an architect coined the term parametricism in 2008. His employees created node graphs in Grasshopper while he just tweaked the parameters. I wonder if that’s why he came up with the term. Grasshopper has parameters but what makes it different from industrial design CAD is that you construct geometry with a series of nodes i.e. a procedure.
Duanemclemore · 13h ago
Grasshopper doesn't have to be used strictly "procedurally" as you can reference in geometry from Rhino. However, some of us try to work as procedurally as possible - creating everything strictly within Grasshopper if at all possible. It -is- also possible to use it as a very strong parametric design tool. There is no looping exposed to the user in a normal gh script - but used in the way I think is best, you're always applying conditional logic to make the data and operations do what you want.

A quick example - you can use what are called gates and filters in Grasshopper, so you can do things like route faces that meet some criterion you've set through one set of operations and those which don't through another. Then you can use pattern matching or other operations to weave the data back together in the proper order...

dmos62 · 7h ago
You seem insightful on this subject. What other parametric design tools, techniques or technologies do you consider noteworthy?
Duanemclemore · 12h ago
If you want to check out the motherlode of other visual programming languages, platforms, etc check out Ivan Reese's Visual Programming Codex.

https://github.com/ivanreese/visual-programming-codex

https://github.com/ivanreese/visual-programming-codex/blob/m...

Although I'm going to have to create a pull request because he doesn't have Flowgorithm on there, which is an excellent tool for teaching the very very first steps of learning to program...

http://flowgorithm.org/

Terrible name, wonderful tool.

ddkto · 15h ago
It’s hard to believe this is the first time I’ve seen Grasshopper on HN!

Just this morning, a colleague showed me a web app for building option exploration that he had vibe coded on Replit that wrapped around existing core logic in a Grasshopper script hosted in RhinoCompute [1].

The combination of visual programming, the tree data structure and Rhino’s geometry engine has made this the de facto standard for parametric design in architecture (sorry, Dynamo…)

[1] https://github.com/mcneel/compute.rhino3d

Duanemclemore · 13h ago
Hey, I'm not used to feeling "seen" on HN! Architect, architecture professor, and computational designer here. This is a great first intro to Grasshopper. The links he provides near the top are next steps for those interested in more.

I've found that it opens computational design and programming more broadly up to a broader audience. It has found huge purchase in architecture specifically. I would say this is as much cultural as technical, as architects generally are less rigorously systematic and more global in their thought processes. As people who work largely in the visual domain we are also "visual learners" so to speak.

I first started dipping my toe into Grasshopper in about 2010, and feel that I was fairly expert by about 2015. SHAMELESS PLUG [0]. I've used it at a high level since, and taught it extensively.

Most users - almost all for a very long time - used it primarily as a tool to create, draw, and fabricate more crazier geometry easier. And it is certainly good for that. But in using it - and especially in teaching it - I also find that it is excellent to demystify the design process in ways that folks like programmers instinctively understand. That is you have to be able to break complex problems down to a series of atomically small operations, then build those back up to sophisticated outcomes.

Maybe the most valuable aspect of this - both in my practice and teaching - is understanding how to work both as procedurally and parametrically as possible (I'll put more about this under the comment to that end that's already been posted). Many, if not most, of our jewelry pieces are standalone grasshopper files which reference no outside data at all.

Anyway - I have much, much more I could say about: its use in architecture, design, and education; its relation to learning to think and create a rigorous and flexible design process; and more. But it's great to see it here!

[0] Since 2015 my partner and I have run jewelry company X Over Zero - https://xover0.com/ . All of our designs start as my mathematical and geometric explorations, coded in Grasshopper.

p.s. Incidentally I'm also based in the deep south like Mr. Harmon. And - although we must know people in common, sadly this is the first time he's hitting my radar. I'll be emailing him by the end of the night. Thank you OP for bringing him and his work to my attention!

downboots · 15h ago
Similar interface idea echoed:

Unity

https://game-ace.com/wp-content/uploads/2020/04/Bolt5.gif

Blender

https://blenderartists.org/uploads/default/original/4X/3/0/c...

Chemcad

https://img.informer.com/screenshots/3390/3390423_1.gif

Even KiCad if we stretch the analogy

Would be good to see this for general programs, or with modular AI agents, or for ODE compartment models.

Also of note: https://worrydream.com/ExplorableExplanations