« Waffle Structural System: Using Grasshopper to Output Structural Ribs to a Laser Cutter or CNC Mill | Main | Slow Food Nation Opening Night »

Grasshopper Tutorial: Suspended Ceiling

Posted on October 12, 2008 by Registered CommenterAOP in | Comments10 Comments

I have been asked by Andrew Kudless from Matsys to teach a seminar class on Oct. 16th at the California College of the Arts on how parametric modeling techniques and the Grasshopper plugin have influenced my work.  What better way to do this than to show a tutorial on how I used Grasshopper to help create one of our latest projects where we suspended over 3,000 mason jar lids from the ceiling to create a fluid surface.  Given the new release of Grasshopper 0.5, I have modified my original definition to be more efficient and robust.  The definition now creates a set of points that center themselves inside each panel and has an expression function that helps keep the point spacing consistent between panels.  I have also created a step-by-step tutorial that shows how to create the full definition and explains some of the more complicated aspects of the system.

Source Files:
Suspended Ceiling Tutorial.pdf (size: 1.4mb; step-by-step instructions)
Suspended Ceiling_rhino scene.3dm (size: 322k)
Suspended Ceiling_full definition.ghx (size: 484k; Grasshopper definition)

Note: This software and its documents are in the public domain and are furnished "as is".  The author, Andrew Payne, makes no warranty, expressed or implied, as to the usefulness of the software and documentation for any purpose.  This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.  http://creativecommons.org/licenses/by-sa/3.0/us/

PrintView Printer Friendly Version

Reader Comments (10)

None of the data is producing the circles. Do I need to assign a circle component? Also, if I don't see a field of dots before I assign "Center Pt Row move"- does that mean the definition isn't right? Also, I am using the current build of grasshopper which is 6.10. Please email me back

12-29-2009 | Unregistered CommenterM

Great tutorial, lots to learn from here. I'm just having a problem with the trimmed lines bit. My untrimmed lines look perfect, but when I add the surface/curve intersect and then connect it and center all pts to Trimmed Lines, it wants to create connections between each point and every opposite point, not just the points directly in line on the z-axis. Any idea why it's doing this?

It's causing my whole grasshopper session to freeze up whenever I try to change anything connected to the trimmed lines component due to the insane amount of lines it's created. I've gone over that section of the tutorial many times now and can't figure out what I may have missed that's causing it to act this way.

07-29-2010 | Unregistered CommenterTim

Same problem here...It connects all the points of the ceiling to all the points of the surface.

Dont know if it has something to do with cross reference.

Thanks anyway for this great tutorial!

11-26-2010 | Unregistered CommenterSalvo

HELP! Please update this tutorial with grasshopper version 0.8.004 (the current version). There are changes like no logic tab (now the math tab) and the definition is not behaving as expected.. Please help or direct me to an updated primer...
thanks

01-5-2011 | Unregistered CommenterAJ

So I figured my way around the tutorial until page 4 of 9, when I attempt to hook up two functions to the Gate AND component. At this point the gate and turns red and the error message is "data conversion failed from string to boolean".... I am not sure why this is not working.

PLEASE anyone help!!!

why is gate And component not working? What other method can be used for what that part of the definition was trying to do??

01-5-2011 | Unregistered CommenterAJ

AJ, I had a similar issue with the Gate AND component. The only advice I can offer however is to make sure you have followed the tutorial exactly to that point. I was having trouble because I was converting everything from feet and inches into mm. So once I got the 'point spacing' slider set in the right numerical value it worked for me. If I had have started my file in feet and inches I have no doubt this would have not been an issue, so just make sure you have followed the tutorial. That's all I can think on sorry, and try to get your head around why things are happening. I you understand what is going on then you'll be able to figure out a solution : )

But I cant get past the trimmed line section... Untill I made all the 'copy points below' points bellow the surface Rhino would crash whenever I tried to hook it up. But now I get the same problem explained above, it's just a mess of lines criss-crossing. And when I change the algorithim on the 'Trimmed Line' line component to shortest list, the lines only start from one of the 84 (or so) points. But each line only connects to one of the points on the surface which is a start I guess. Has anyone else encountered this?? Any ideas??

I have uplaoded a photo to: http://i711.photobucket.com/albums/ww118/mutedmonkey/GrasshopperProblem.jpg

01-15-2011 | Unregistered CommenterMatthew

Sorry the points are more like 600 than 80...

01-15-2011 | Unregistered CommenterMatthew

Just flatten then Trimmed Line B input, this solves all the problems with multiple connections.

06-9-2011 | Unregistered CommenterTomas Tvarijonas

About the Gate And problem. I had the same problem till later I realized I had used the wrong division componenent. Make sure you use the division component which divides two numbers and not the complex number one.

08-16-2012 | Unregistered CommenterApoorva

Weird, the definition is making my computer sweat a little.
It just won't wrong for me.
Why ? I launch the rhino part and open the .gh file but it is just lagging to death. Could you give me some tips on how to run the definition ?

Thank you.

Marc.

04-9-2013 | Unregistered CommenterM

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>