Structure Envelope and skin using Grasshopper in Rhino for Parametric Architecture & Design | DCO Graphicstudio | Skillshare

Playback Speed


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Structure Envelope and skin using Grasshopper in Rhino for Parametric Architecture & Design

teacher avatar DCO Graphicstudio

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Lessons in This Class

    • 1.

      Intro

      0:51

    • 2.

      Base form

      6:13

    • 3.

      Subdivision

      6:51

    • 4.

      Structure

      2:50

    • 5.

      Connections

      8:22

    • 6.

      Perforations

      4:52

    • 7.

      Finalize Script

      5:33

    • 8.

      Bake and Finalize model in Rhino

      21:25

  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

28

Students

--

Projects

About This Class

In this Course you will learn how to create a Structure Envelope and skin using Grasshopper for Rhino.  You can add shelves, and dowel settings to change the design.

I walk you through the initial steps and mindset to get into when working with this program.  Once you visualize how you can model using this method, you will unlock a new world of modeling.

Grasshopper is a bit intimidating at first, but with some experience it can become one of the most useful tools. These tutorials are great for students who are trying to expand their design arsenal. They will allow you to create some complex and impressive designs in a quick amount of time. The steps in this tutorial are useful for many other applications. So make sure to follow me for future lessons, and let me know if you have any questions. By the end of this course, you will have a better understanding of how Parametric Design works and how you can apply it to your specific use case.

At the end of the course, you will have the ability to download the script I created for the course, so you can add to your library.

Perfect for:

Architecture Students, Design Students or anyone interested in advanced 3D modeling

Meet Your Teacher

 

Check out my website for more Parametric Courses and Scripts

copetedavid.com

Here you will learn about Architecture and Parametric design along with other 3D modeling tools   

 

See full profile

Level: Intermediate

Class Ratings

Expectations Met?
    Exceeded!
  • 0%
  • Yes
  • 0%
  • Somewhat
  • 0%
  • Not really
  • 0%

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.

Transcripts

1. Intro: Hi and welcome to DCO. My name is David confetti. These videos I'll be sharing with you how to use Grasshopper right now. In this video, I'll go over how to create a structural envelope that involves a wireframe structure with panels and connections, as well as openings. I'll be sharing how the program works by walking through all of the steps in detail. This way you can understand how it all functions. Program is a little bit intimidating at first if you've never used it. But once you get useful, you'll see how important it is to understand it and how you can use it to your advantage. I'll also be sharing the script so you have it by your side as we move through the exercise. This way you can always reference, act to what I'm doing. Hopefully you're excited about getting started with Grasshopper. And let's jump right in. 2. Base form: To start, we're going to first bring in construct points. So I'll double-click here. But here to construct bring in point at the zeros 00 coordinate. Now we can start by moving that point up and then we'll move it here in the x-direction. Let's start here with this point, bringing a MOOC component, plugging the point into the geometry and in the motion will bring in a unit z. This way, we can move this up the z-direction. Let's bring in a Slater. This will determine, I'll type in units. Let's see what units we're working here. Now I have millimeters, but I want this to be a large design local here and change that to feet. That would be 79. Now let's move this top point in the x-direction. I'll go here to a mood component. The motion will bring in an unit x that I'll also bring a slider. But I'd like to just copy this one. We can use, we can see it a little bit of time. And so with these three points, now I'll put it together using nervous curve. Now you could also use interpolated curve for three-point arc. But in this exercise I wanted to show you using NURBS curve. We'll start by adding the first and holding down Shift. I'll add the other two points. It's an under degree. I'll change it to two. This way. The component is running correctly. And when we change it from two to one, it actually changes at interest rate segment. But we do want one curve. This way. We can extrude it and have a base surface that we can apply our design to. So let's take our arc and go here to extrude. Will be extruding this in the y-direction. We'll go here to y or unit. Why? We'll also obvious slider from here. That's our extrusion. I'm just moving some of these sliders around just to see the results that we get. With the space surface. What I'd like to do is plug the surface into surface component or a direct component, either one would work. And the reason why I do that is because since this is the base geometry, I can also bring in a surface or set of different circles that I create here right now, in this way, can switch between a parametric surface and one that I can create instead of right now. Let's clean this up. I'll go here to structure height, length, degree. This is going to be linked. The cool thing is that I can also turn this into a straight line. I having it have no overhead. This next steps, we are going to be offsetting. We're going to be upsetting the surface. Then subdividing it with triangles. And from there we'll continue creating the connections. This next portion, we need to offset the surface to the outside. This will give us the offset between the inside wireframe and the outside. And if skin, I'll go here and bring in an offset surface. Distance is going to be to the outside by whatever slider. So let's go here and a slider for it's offsetting it to the inside. If we want to offset it to the opposite direction, we'll go here to a negative component. This way. You have a positive slider and it converts it into a negative value for the distance, which is the direction that we want to offset it. 3. Subdivision: Now that we have this offset, we need to sub-divide both of those using whatever pattern you want. For this. This time we are going to be using lunchbox. Then under panels will be using triangle panels B. We'll go ahead and offset this out. Now I'll bring in under lunchbox triangulated panels. I'll plug in the original surface. That's quite a bit of subdivisions. We could probably use a lot less to start with. And then we can increase it later on as we complete the script. Let's go here to you divisions. I'll go to three. I'll create two sliders here. I'll disable the preview on the surface. And most of the stuff back here, we don't need to preview. So I'll select all of this middle click and disabled preview. Now that we've subdivided to this one, well, we can do the same thing to the other one by copying. This component will plug in this offset surface as the surface input. Technically we've basically just applied the pattern to that both of those surfaces. Now the one on the outside, it's going to be larger than the one on the inside. And that is because when you offset it, you're actually creating a larger area that you're subdividing. Inside. One is going to be a wireframe. This outside one's going to be a panel and I'll be creating a connection that connects those panels to this wireframe. What I'll do first is you bring in a component called deconstruct view. It. I'll plug in the panels into the beer up and it'll do the outside ones first. As you can see, we're now getting redundant surfaces. Because every time we bring in a new component, it will preview that. Sometimes it just starts overlapping. So I'll tend to disable the preview on this stuff before. This way it doesn't get in the way of this stuff that I'll be creating in the future. And you can always bring it back, right? With this, we'll go to faces now. We have, let's see how many faces we have here. 42 phases. Those 42 faces have an outside curve. Now, if I bring in a curved component, this will actually give me the outside curve, each one of those animals. How do I know that when I select this and I middle click and bake, you can see that under the default layer, the baked each and every single one of these polylines, which is what we need to then offset and create that connection. What I'll do is I'll go here and I'll just select all the stuff that I just baked and I'll delete it. Now in here, what we need to do is offset this curve. So what I'll do is I'll go to, I'll set curve will offset this curve relative to the plane that it sits on. Let's go here to distance, because right now it's upsetting to the outside and we actually want it to offset to the insight. We have to go to a negative component. And the distance will say 1.5. Now we've technically just good thing about this. And actually the important thing is that faces plug those into the plane. This way it's referencing, referencing the plane and it's offsetting it to the inside. This is what we need to now extract the points. The points are critical because those are the points that will be connected to this outside location on the wireframe. Now let's disable the preview on which one's on these curves. Next, we'll bring in the component called discontinuity. Go here. This continuity. What it'll do is it'll take a line and wherever it's discontinued, which means that if this is a polyline, it'll give you a 0.1 here, one here, and one here. Basically, wherever the line turns, you get a point. What that means is that these panels can now be connected from this wireframe and below, what we'll be seeing is something like this. Having these points connecting here. The ones in the middle here will connect to 123456 and so on. So let's go and do the same thing that we did here. But we won't have to offset it to this inside surface. These insights surfaces will just be bringing in a deconstruct VRef. I'll also be bringing in. We have this will print will do the same thing, basically bringing the curved component into the faces. Now instead of upsetting, it, will be bringing in discontinuity. Once we bring in this continuity, we have to plug in these points here. To connect them, will bring in a line component. We'll start here and end here. 4. Structure: So as you can see, what we've done is we have offset this to the inside and connected that line here and offset to the inside. Connected that line there. I know it was probably a little bit confusing there, but that's all we did. Let's go back here. Disable the preview on most of this stuff. Then get rid of the points. I'll select those middle click, disabled preview. And then the same thing here. Bring it back those panels. At this point we've basically created the connections, created the base geometry. Now what I'm going to do is turn this inside one into just a wireframe to do that. And we'll take those panels, will join them using B-RAF join. The flatten. The input will bring in a component called the rep edges. With this component will do is when we plug this in, it'll give us those curves. And the reason why we don't use the deconstructed once it's because when you see here we have 126 edges. And that's because each panel has a line and they overlap. So technically you have to here, you have to hear where they have one and another one meeting and you actually have to two lines in here. When you look at the output, we only have about 60 curves. On here, we have 126, we have way too many down here. Using this, we can now disable the preview. Bringing a pipe component. I'll go to caps, round and plug-in the naked and interior curves. Now we can also have a different size inside, once then to the outside ones by having two separate components, one for the outside into the inside, one. Then creating two separate sliders. Outside and one for the inside. 5. Connections: The next part is going to be to create that connection, right, where this line intersects with that surface. To locate where those are on the panel. What I'll do is I'll take this line and intersect. It can bring in the origin of the plane. So we'll go here to a vector. We have plane origin. And I'll bring in surface. And the origin are going to be those points, these endpoints. Now what's happening here is that this is coming in as a grafted list, and this is coming in as just a regular flattened list. I actually have to use this space surface to work. Because now we have the information coming in organized in the same way. It will actually work. As you can see now, we have this point lining up exactly where that surface is. And we need that because we need to know where those planes are located. We're bringing a circle, plugging a radius. So we'll say 1.500. This way I have a few decimal points to kind of play with here. Now, I'll disable the preview on the plane and we're able to see a little bit more clearly where those are located. Now we're going to take those and subtract them from the panels. Actually go here too. Region difference. Bringing in curves which are going to be these basis. B, are going to be the circles. We've now created. The new panels that have that panel void. We'll go here to boundary surfaces and disable preview on this stuff. Now what we'll do is where those circles that are located bring in boundary surfaces, which means it will create a surface at the boundary of that circle and extrude it perpendicular to that surface, will go here to Extrude. Extrude the surfaces. The direction is going to be using amplitude perpendicular to the surface. And it's upsetting to the inside, which is fine. But we also want to extrude it, it to the outside. So we have another one, so we'll go here it another copy. And bringing a negative component, we have an extruding to the inside and the outside. And the amplitude will be the value. So we'll do 0.5. And both of these outputs, I like to bring them out as one single output. If possible, grouped, because there's so many and you'd rather have them grouped. So I'll flatten the output for the group. So when you bake this, it's going to be a lot easier. I'm just playing with the values here, Numbers tabling the preview and all that stuff. So all I see is this last component. Also disabled the preview on this one because technically this is the only one that we need. What's really cool about this? If I get super excited when I get to this point, because there are other things that pop up into my mind like how this is technically a truncation, how you're playing not just with the base geometry that we had as triangles, but now the new upsets be kind of create this new type of geometry that is really fun. And I feel like there are other options here. Now, we're only connecting the panel. The panels themselves could have a pattern within it. You see this base offset. But even using this base offset, we can offset this a little bit more increase. Last panel that has openings and have that be transparent. Transparency. So like I'm saying, this is just the beginning. When you start working on a script, you start coming up with so many different ideas. I'll disable the preview on this stuff, will go back to this curve. And now let's turn those into pipes. So we'll just copy This holding down Alt and then I'll just plug this in, which will give those ad should work. Now, I actually feel like it looks pretty cool when it has that bump there because it looks like a ribbit or some kind of detail that it has. I feel like this should be a 0.3 weight thinner than this. And then the outside would be the thinnest one. Then I'll pull this one back to that. Really the tolerance here is going to be which ones will get the closest. We see that this limit to how little we can offset, that's getting to like one. It's going to be like a ratio between the radius after that circle and how far you can get that. How close we can get that in. Because if we go here to our circle, we lower 0.6. You can then probably if you had a lower value, maybe one. 6. Perforations: The upset here determines how far from the base structure here. I do want to create some panel opening. So let's go down to this offset. We're going to offset it again. We'll copy these. Basically we can plug-in the same value. This way. The law, it's kinda tied to that. Obviously we can add more. But we don't want to do less than this. If we wanted to add more, will bring in addition. And we'll say 1.5. Notice now we can say this is the minimum and then it can go from there. The thing is that since we have these panels, which are called these triangular, triangular panels that are small, these are actually going to be our limit because when I offset this further, at some point, the ones that will break before anything will be the small ones. That's going to be our limit. But it doesn't matter because now with this, we can take this offset and change. Either we can fill it, it using a different component or here under corners. If we go, I think round. That's the thing. That's if we're offsetting it to the outside. So on this one, I will go to a fillet edge or a bill. It will change the radius to 0.5. With this, we will go to region difference. This will be curved as being, this will be current stay. The same curves. This one is giving us some issues here. I think this one is the one that does it and it's because it has to be before we turned it into a service here. We will actually use this after the fact. Now that we have these offsets, trying to think what would be bringing boundary surfaces here. You can probably see that these, we could probably change the size of them using an attractor point or an attractor curve. But I think with this, it gets shows you the power of what this script can do, which is turned any surface into a panelist object like this. Now let's go here and bring in, change this value for 53, a straight one. And you'll see that it'll also work. This will work on any surface like overhang 0. We're even if we create it ourselves. Let's go here too. 7. Finalize Script: I think you guys like this one will go to a sphere. Radius, will bring in ISO trim. Actually, we already have the surface. It applies it to the sphere, to the inside. If we want the surface to offset to the outside, well, we know that the value has to be also the three. Then this one has to be positive. So there's a lot of things that actually happen when we use this sphere. Let's see if we can flip. It, doesn't do it. Okay? So there are some limitations like that sphere might, may not work. We'll go here into elevation view and create an arc like this. I'll extrude it out. Go to Extrude curve like this and go here to set one surface. I was trying to create that base surface, but it's so the surface is small. So when I created that other one that was so large, it did not work. So let's create it again. I'll go here and create an arc. Already. Anywhere here. I'll take this arc will extrude by whatever amount this way. Now we can set one surface. I flipped it the other way, and now it works. Now let's increase the subdivisions. And it works perfectly. I will take this, I will actually work off of this salt bake. All of the items here. We'll start one at a time. Go here to my layers, started a new layer and call this structure one. I hit tab type-in structure to hit Tab and do connection. Then Tab one, and then Tab. And it'll tip. We'll start here. I'll make structure one, my current layer and go to these two pipes. I'll middle click and bake over the structure two. And I'll go to these connecting pipes, middle click and bay. They don't go to connection, which will be the extrusion. Middle click, and then we'll go to the panels. Middle click and bake. Then we'll go to panels too. And then also bake that. We'll go here to shaded mode. Lock the default layer, which is the layer where I created that surface. This way I can take all of this and move it to the side. I'll type in zoom selected. Now that we bake all of that stuff and we have everything else sitting, I'll select this. But zs for zoom selected. And I'll type in purge. I can get rid of all of the layers and stuff that I'm not using. With this. Let's go here. 8. Bake and Finalize model in Rhino: In our random mode. Let's take a look at our model. So everything is super clean here. The only thing is these panels are actually very, very thin. This is where I'll go in two panels. One, right-click, Select Objects and type in join. This way it's a joint surface and we can take that and go to Offset surface. And then we'll offset it to the outside by two inches. Here's the thing. When you offset it asks you if you want to delete the input. I'll go here to copy, to clipboard. I'll undo it. This way. I'll offset surface F flip direction and do it again that amount. This time since I had copied it, I can now paste it because I had it on the clipboard. Now we can we have the outside panels. Inside panels. And we'll go to Panels to select objects. And the same thing here. So we'll go to Offset surface, will go to one inch, we'll do less. Or the inside panel. The next thing is connecting this to something. Typically, these would be would have a foundation. So to do that, we'd have to think of where the base line of this is in. Technically, we don't have that because we haven't baked that information. One thing to keep in mind is also to bring in some of the base geometry of that we had before we created this dome. This way we can use that as a reference to create further geometry when we're modeling it here. So one trick to do is bring in a plane. I'll go to a new layer and create a plane from this endpoint all the way out like this. And then using the scripts scaling it but intersects it. Next thing is bringing a component called intercept or a command called intersect. Two sets will use this surface. And I'll right-click on structure one there to select objects. This and then Enter. When you use that, those two commands, it's going to ask you, first set, the second set, and it will give you of curve that is intersecting with that surface. Now we can also do this inside of grasshopper, but this is something that is not necessarily, doesn't necessarily have to be in Grasshopper because the idea is that Grasshopper takes care of the heavy load of the programmed stuff. And then we can use some upper modelling skills to earlier finish detailing some other things here. I'll select this and I'll type in isolate. This way. I don't see anything else. I only see this and I can go to top view and work with this. Delete this information in here. Because those are not necessary. I thought I can black tomorrow at once, but I could not. There are different ways to approach this next portion I was going to use is on layer six, which I will turn into a gray layer. And I'll go to a new layer seven and turn this into a red layer. This way I can get the midpoint now, I typically don't have nearest aren't. Smart trick sometimes gets in the way. I'll take this and I'll upset. Two inches, three inches to the right, and three inches this way, two inches this way. And extend these lines. Trim this out because this is the location of where that connection would go. If we can't see it, it's because I have it the same color as the grid. This is a connection. If I bring in the structure, we see that it's intersecting here. And I'll. Extrude more than that. So I could be as simple as taking minutes and then doing boolean difference to the inside to create a connection. But I feel like good way to fix that would be to take this. I'll type in isolate, explode. Get rid of. Well, this can join this surface lip direction and do one inch. This will give us extruding this surface out. Extruding this surface out. In the middle of here, we'll add a bit of detail. More detail can obviously be added to this. But sometimes working from the general way to go. So we'll go. I'll also turn this into a block. I'll select this had been blocked. Will calm, will select this one. And we'll call this anchor. Because technically this would go down into the ground and be bolted down. Let's type in show. Let's go here to Layer seven. And action won't let me change the name because of the law will go here. And if this is the center, which it is from the midpoint, and we can copy these at a specific spacing. We can say every TV, maybe a little bit more. I'm holding down Alt clicking and it will remember the amount. I'm just picking these. You've seen a mirror command. They look a little small. But that is because this is actually a super big structure. So with that, let's hide this ground plane. I'll bring back this curve and I will offset this, makes sure that it encompasses the outside here. So I could offset two feet. I'll do the same thing out here. So let me show you a trick that I use a little upset. The outside. I'll select this one and this one and use bounding box, which will create a rectangle at those extents. So I can just delete that, take this and extrude this down. I could either extrude this down into a little stem law or offset by the inches to the outside. Then bring this down minus one. This way, we can loft these to type in cap, then turning that into a solid and then extruding this bottom surface down. Maybe by the entire floor. Either way. This would be like without a person who, you couldn't really tell the scale anyway. So this might as well be six inches in this P1P2. This could be, you know, really, really large. So that's that stem wall here. And then we use the center line to offset or a footing. That will offset this way or this way. It can lock these, we could extrude it, different ways of doing it. And then extrude surface. This is going to be then change object layer. I'll have this side, this side overhang. In terms of footings, you don't have to have continuous footing. You could technically have this be a Fuge separate footings. But I feel like it looks at best when we have this continuous wall here. These will be blocked. Group those and copy them. Here's the thing. It's pretty tricky to move this relative to the center here to assume selected copy relative to that center. So I'll go to Copy. I'll turn on project because I'm not referencing a point that will be the same in the next location. But if I use project, I'll use the construction plane on the ground as my reference. And it will project to the middle, making sure that it always works here. The other way is selecting that typing in. And I are mirror, reflecting that. Using that mid location. I'll go to Layer seven. Select Objects. Use the mirror command through the middle here. Projected end. Here's the thing you do want to get close in there and make sure that it is projecting off of the location that you're trying to do it. Otherwise, you'll have a bit of a harder time. I'll select these and do the same thing. Now in terms of other this withstand up, the footings would hold it up for the most part. This arc we're going to try to push to the outside. There may be some other engineering to do here, but if you were to put a slab on top, the slab would be poured on top of this one. This side. And up from the ground there. It looks a little bit small, but in reality, let's say this was outdoor design. The slab would be bored on top, something like this and there'd be sand and gravel down here compacted. That kind of covers for the most part. Some of the details in here. What I would want to do next is to go here into rendered mode and apply some materials to the different components. Because we have the structure, we have the connections, we have two separate panels. So it'd be cool to explore kind of contrasts between those two. The approach I'll take for this is going to be using V Ray. Now you don't necessarily have to use VRA because rhino already has some materials that you could apply. Similar steps just using your own materials inside a right now. So I'll go here instead of V Ray, I'll just create a new material. And I'll call this structure one Structure and this one I want to create first because then I'm going to duplicate it. And when I duplicate it, I don't want to have to do these steps again. We'll go here to color, make it a very light gray metal NAS. I'll go to the top and then roughness. Just do about 0.2. I will take that material and apply it to structure one. And thus we can see it's already starting to apply some of the materials to the model. We'll go here to structure one. Duplicate. Make this maybe a little bit darker. We'll apply this. The structure one is going, structure is going to be on structure one in structure to this one will go under the connections. Can be a bit darker. That and then the panels here will be trying to think of what's going to be. I'll just create a generic material, all this animal one. Then I'll create a new material or work off with this one, will go to bit of a darker color. The roughness. I want it to be. Not super rough but enough where you can see it a little bit of shine. Apply this to panel one. Duplicate this panel one. A tiny bit darker. Apply that to panel two, or vice versa. You can say Apply panel one. You can also another material that is a bit more translucent. Use that as the penalty to the thing. Opacity is not going to show up under this preview. The last one that we'll use is create the concrete where the grounded for the footings and everything will go here to materials. Basically copy panel one or panel to I will just copy panel to duplicate. We will bring this to a light gray. Panel three is going to be our foundation or footing material. What I'll be doing is doing a quick render. Let's take a look at what it looks like here. First, let me actually save the file. I don't want to lose all the work we've done. So I'll pause and I'll save both of these files under whatever folder. So I'll actually change. I have a preset that I've created. Render two. And this will give me an idea of what it's going to look like. And if I go here to be re interactive, I'll be able to see a preview of what my render is going to look like. Typically, I wanted to be facing the location of where the white background is because this is a studio setup background. Can change my aperture if I want to. Go to, this looks good, which I feel like it looks pretty good. I'll now go and disabled that and I'll go to regular render. I'll leave this rendering and also capture this script. This way I can kind of create a little composite and read a library of the work that I do. That's one of the things that I like to do is share some of the scripts that I have and share some of their knowledge to get people into parametric architecture because I feel like it's one of, one of the things that is very critical to learn to become a better designer. So thank you very much for watching and I hope to see you next time.