Subdivided Floor Pattern System 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

Subdivided Floor Pattern System 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

      1:08

    • 2.

      BOERDER AND SUBDIVISIONS

      9:09

    • 3.

      CREATING THE PATTERN

      9:08

    • 4.

      SUBDIVIDE SURFACE

      6:29

    • 5.

      EXTRUDE TO POINT REMAP NUMBERS

      8:37

    • 6.

      FINALIZE PATTERN AND SCRIPT

      11:43

  • --
  • 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.

42

Students

--

Projects

About This Class

In this Course you will learn how to create a Subdivided Floor Pattern System 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 DCL. This video I'll be showing how to create this subdivided floor pattern using a few steps will be starting with the overall geometry, offsetting a band than on the inside, creating a pattern using circles. Then from there, creating the details for the ground line, and then creating what you see here. So I'll be going over all of the steps and Let's jump right in. 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. The program is a little bit intimidating at first if you've never used it. But once you get used to it, 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 back to what I'm doing. Hopefully you're excited about getting started with Grasshopper. And let's jump right in. 2. BOERDER AND SUBDIVISIONS: Alright, so to get started, first thing we'll do is bring in a point. It will go here to construct point and then plug that into a component. This way we can move this location at any moment by creating a point here in Rhino and then setting a point. And now here we can start creating a rectangle. So this will also be a base, the base curve that everything will be created with. Let's give this a pretty good size, will go 20 by 20. Now, we can use this as the base geometry for creating our design. So I'll plug this into a curve component this way, we can also change the curve into a different polyline if we want to. Now, let's move on. Insert creating the design. That's gonna go on the inside of this. And the next thing we'll do is take this line and will offset it. So we'll go here to offset curve. Then we'll offset this base curve. Now it does offset it to the outside. So if that's okay with you, then you can kinda leave it. But I am going to offset it to the inside. So I will create a negative and then offset it to the inside. So I'll go 1.500. This way it actually gives me a slider That's from 0 to ten, and it gives me two decimal points. This is going to be the outer band and we are just starting with the base geometry, so creating the outer band. And then on the inside, we can also subdivided in different ways. But for that we are going to use a particular design on the outside will just be creating a buying a band that has subdivisions on the outside. For that, we'll need to create a surface here and then a surface on the inside. So let's go here to boundary surfaces and plug in both the outside and inside one, holding down Shift to add another one and then we'll flatten the input. This way. We have that outer band and it creates a surplus between those two lines. Next thing we'll do is we'll take the inside line. We'll copy this down here and plug in the polyline into boundary surfaces. And we don't have to flatten this one. But that creates that surface. So basically we created this parametric overall shape. And we can also plug in a different polyline and it will do that also. What's useful for this is let's say you have a floor plan design or something and you want to create a nice entry with a end up like a cool display interior floor. That's kinda what we're going for here. So used to having the outside band, what we're going to do is take this inside mine and we're going to divide it using divide curve. The other thing is we actually need to explode it because if we plug that in here, you'll see that it's not even like it. They don't always land in the corner, and we do want them to land in the corner. So we need to explode this curve using the explode curve component. Explode. Let's see, Yep, the exploit component. And now we have the segments here that we can plug into the curve. As you can see, we have it's subdivided and it does subdivided evenly. So there will be some differences in the way that this gets subdivided. So we'll just keep that in mind that the subdivisions are going to look a bit different and that's going to be in the way that will subdivide this, will take these points. And if you visualize that this curve got divided by ten points here in the count, we can change that. So it'd be visualized that we have subdivided this line and also this line into six points. Well, what happens is that we'll have, and we'll have redundant want here is we will have two points, two vertices on each corner. And we don't want that. So the way to fix that is going to be here. When we have the point output, we're going to have to plug that into a cold duplicates. And that will get rid of the duplicate points which will be at the end. And you'll see that now we have 24 points rather than 28. So with that, we can actually use the Voronoi, a man to subdivide those points like this. And therefore, using those cells, we can then split what we want here. So we can either take these cells and split the B-Raf where we can extract the geometry. So there's two ways to do this. And let me show you those two different ways. When you have these cells, we can technically just go here to this surface and go to Split. We'll go here to split, be rep, multiple. And so we'll take this surface and we'll plug in those cells as the cutters. Now you'll see here that we have 24 trimmed values. So we can disable preview here. And you'll see that now we have those subdivisions showing up here. And it's just due to us dividing it evenly by a number. So that is one way of doing it. The other way is going to be where these cells intersect this surface. We can extract those lines. So we can go here to intersect B rep curve. And now we can intersect this P wrap with the cells that are technically lines or curves. Now we can extract those lines and then from those lines we can then split it. So it would basically do the same thing, but that's two different ways that we can extract that geometry. Here. I'll actually delete this one and then disable the preview on all of this. Now I don't really need that. All I care about is that I have this output and this is going to be ended that outer brain. The other thing is that technically we don't have this split down the corner and sometimes you do want that. Let's say if you want to create a tau, this is, this would be a difficult child to cut. One way to fix that will be to take the outside and inside curve. And rather than creating a boundary surface between the two, will actually create a loft between the outside line. Then again the outside line. So the top one and then the inside one. Holding down Shift, which is this one. Now I'll flatten the input and it will actually, so let's disable the previous analysis that just to kind of show you that will actually create this diagonal it now this is actually what we could use as the B-Raf to be split. So now it actually creates here. Now it actually creates it with that subdivision. And I think that looks better in terms of construction. So with that, we have the base geometry for the outer border, which is a detail that for the most part is kinda critical when you want to create a nice entryway or like a nice detailed floor. So now with that, we'll go to the inside surface and see if it's this one. Yep. But now with this, we'll use this as the base geometry to create the next pattern. So the next pattern will also be using the Voronoi subdivision, which is this one. But we'll be creating a, an intricate pattern in here using circles. And you'll see how intricate, intricate you can get using just simple circles in the intersections, using points. 3. CREATING THE PATTERN: So with this base geometry, one of the things that before I move forward too much, I just want to move it around a little bit just to show you some of the things that it can create an, obviously if we created as a, as a perfect square, it's going to create the perfect subdivision. So maybe that's how we'll keep it for now. But in reality, let's say the room might be a different size one way rather than the other. And maybe that's something that could be, we can fix. But for now we'll move forward and create the pattern in here. So with this one, we'll bring in the central point, so we'll get an area. The next thing we'll do is now that we have this center point, we're going to create a circle. We'll go to circle and go plug-in the centroid into the plane. And the radius will use a number. So 150. That's a little bit too big. So maybe we can lower the limit here, say 100. So this is going to work as well. We're going to focus just on creating the pattern using this circle and this point. Now we'll create a division divided curve. And we'll plug in this circle into the divide curve. Now we'll create a subdivision amount. So we'll go here to slider and I'll go to less than nine. I want to go too crazy. In this way, we have created this subdivision of points around that circle. Now we can create a line segment, line, the line component, and we'll bring in from the centroid to the outer points. Next, we'll take those lines and we'll divide them again. I can take this, slide it here, tap Alt and plug-in that curve into the division. Now, this one, I do want it to be less. We'll go here to something like three. Now, the next thing is going to be to create some circles that will be based from those points. Will take these circles. I'll actually create a new one here. So I'll create a new slider and a new circle component it into those points. Plug those points into the circle. And now we'll go here to something like 5.50. And of course, these can always change because the most part, it's going to depend on the area of what you are creating. Now this is getting into some like sacred geometrical stuff like Medtronic's cube and stuff like this. But all it is is we're subdividing a circle using points, connecting it, then subdividing it again and using circles again. And so ear will change the upper limit to 20. Now let's move this around a little bit. Next, we'll take these circles and plug them into a component that will give us all of the points that were the curves intersect. So here we'll go to multi multiple curves. And that when we plug that in and flatten the input, it gives us all the points that intersect. Those points are then going to be extracted and placed on a Voronoi. What I am seeing is that there are at some point, so let's disable the preview on everything except for the points. We can see the pattern that it's basically going to create. But there are some places in which it does mess up a little bit. So we'll keep an eye on that and we'll take this and plug that into the Voronoi component. Inborn oil, all it does is it takes a set of points and it creates the most efficient subdivision according to the set of points. And so that's kinda what it's used for also in nature. So we'll plug in the points in here and we'll see that when I flattened input, we're getting now the like, some weird pattern that's starting to look very geometrical. So let's disable the preview on this. Now let's take a look at the patterns. Here. We can start by basically increasing the overall size of the base circle. Let's see if we have that. We can visualize the overall area. Now here we can start playing with the circles. And let's change the slider here. And I think the larger we make the original circle, the issues with the pattern started happening more on the outside. Here we're playing with the amount of subdivisions. So these are eight. So we can go down to a lower number, something like maybe six. Then here, this is going to get into more intricate patterns. So the more subdivisions in this way we have, the more intricate it's going to be. So we'll go here to three. We'll keep it fairly simple. We can always pull the slider and get it going kinda crazy. So having those subdivisions, 36, we're flattening this one on the outside. And then let's see if we could do all duplicates to remove duplicates. So let's see if we have here 768 and then here we have 400. What's happening is sometimes we have redundant geometry or redundant points, and that's actually probably messing up some of our output here. Now, also that we don't have redundant points, we're seeing that the component, it's no longer like orange. So now this is working for us. So that's also something to keep an eye on on. Here. Let's go through and play around with some of this stuff. So we're just pulling on this lighters and I'm trying to get a pattern here that I can then use to sub-divide the floor. Sometimes for me, it's hard to visualize when you see all the points. Let's move this. I'm just going to keep going here until I get a cool pattern. So I'm going to need to subdivided maybe by six. Or then let's move this around. Last time. It take here we'll get a cool pattern. 4. SUBDIVIDE SURFACE: There, okay, Now here, we're going to do the same thing that we did to this one, which was sub-divide or use the multiple B-Raf. We're going to cut, unplug these, so before that messes us up. And sometimes that could be an issue because when you plug it in, then sometimes it does a component, it does a run say command that's really long and sometimes gets a computer stuck. And that's happened to me in the middle of tutorials where I'll be almost done. And then one last thing kinda throws everything off. Now, let's go here to our B-Raf and you'll see it will take a little bit of time for it to calculate. When it does, it will give us that result. Now, I learned this trick, which is going to be the way to see what it's going to look like before we run the command. This way you can actually do the sliders smooth without it bugging down. Because now that we've plugged this in, as soon as I move this slider, you'll see that it's 42.48. I'll just go to 43. And you'll see that it's going to then have to recalculate everything once again. And that's not what you want to do. So one way to fix that, if it brings me back grasshopper here, hidden. Okay. So as you can see now, this is the pattern and it took a little bit longer. So one of the things that would be important to do in this case is going to be to use this in-between. But we'll use the intersect curve with the rep, wasn't it? The rep and curve. And we'll use these cells as the curve. And then the B-Raf is going to be the surface. I can technically double-click in here to bring in a relay and then use that relay to plug into the burette. So it's calculating again. And now when I plug it in here, we get this pattern. So one of the things to do is to unplug cutters. So holding down control like an unplugged the cells, I can visualize what it's going to look like and move the sliders freely here. Because when you're just intersecting geometry is not as heavy as splitting an entire directory. So what I'm doing now is here, we're going to use a dam or a data dam. And this way we, when the information goes through here and through into the cutters, now I can visualize what it looks like. And when I finally say, okay, that's the pattern I want to use. Well then I click here on, on that, and then we'll have to flatten the input here. And now it's going to, here's the thing. It has to go through the cells. So that's on flattened here. And let's press play. Now we have our result. And now when we change the slider, this is going to change. And then it's going to ask us to refresh whenever we want to do it again. And we'll just have to preview it using this. That's hopefully that made sense. And that's a way to optimize your script so it doesn't bog you down and you can actually visualize your data and what you output is gonna be before you actually calculate it. This up. Okay, So we basically subdivided that geometry, both the outer band and the inner pattern patterns. So we'll go here to be rep and then plug in those the reps or those segments. And then we'll plug the cell. So we'll just bring them out here and have them ready to view. Now here, we're going to apply some materials. We'll go here to custom preview. Okay, so now that I've plugged in a color swatch into this one, it just gives it a little bit of a different color so we can visualize it. Then here, we can also play around with some of this stuff. The next thing is, they are technically technically here. Everything is super watertight in terms of it being All right up next to each other. So if I extrude, this is actually going to extrude it. And you're not going to see the difference. So let's see if we can try a trickier. 5. EXTRUDE TO POINT REMAP NUMBERS: So I'll unplug the preview and I'll take this and I'll bring in an area component. So every one of those has a different area. This has a small area that has a bigger area. This has a bigger area that has a smaller area. So visualizing it in those terms, we can plug those into here and get all the different areas. So one is 51, is 126, and so on. But they're all tied to that specific geometry. So what we can do is bring in an extrude component and we're going to be extruding it up. Of course, in the z-direction. I thought about something better. We're not going to even be extruding it. We're going to be moving. I mean, we could extrude it. Of course, if we're moving something, we can also extrude it. But I'm thinking now when I look at it, I think the thing that I'm going to do might look better, but possibly not. So let's go to the centroid. We're going to move that up by the area. And it's too extreme. So this is where we can divide the area or we can remap the numbers. So there's two ways of doing it, remapping the numbers so we can be really subtle. That might be better. So we'll take the area component and we'll remap the numbers. This way we can pick exactly the smallest one where it's gonna be. The biggest one where it's going to be. Now let's go here to re-map numbers. So when you remap numbers, we bring in three different components. This is also on my free resource tab on my website to download the remapping numbers. But I'll show you here. You bring in three components at the same time, you bring in re-map numbers, you bring in bounds, and you bring in construct domain. So I, every time I remap numbers, this is what I bring in. And those are the three that I always bring in. So the reason why I tell you that is because sometimes people go like, oh, how do you know which one? It's like no, I always bring in the same ones and you have to remember what therefore, this is going to remap the numbers. So we have to plug in the original values into the values. Source is gonna be what's the biggest and smallest number. So when we plug in the area into bounds, which is this one, this will actually give us the smallest number is 0.06, and the biggest number is 33. So we'll plug in that into the source. Next. We're going to tell it how big do you want it to be? Because right now it's not mapping them any different. We need to change the smallest number to be. Let's say, we'll go here 1.50000. So we have a lot of decimal points and we'll go to a small number and a big number. And as long as you have these two values here for the start, and then we can remap the numbers between 0.22. Now I can disable the preview on everything here. And I can say, okay, the, the smallest one. Let's bring back the pattern. The small ones get this small value. The big ones get the big value. And just thinking like if this is going to be a floor material than possibly this might not be the best idea in terms of is going to be bumped up. But maybe that could be part of the tile design. So now that we have those points that vary depending on the area, and we have remap them to be fairly low. Otherwise it would be kinda crazy because they are kinda up, way up here. And now we can do extrude two points. We have these points. These points are going to be what we extrude two. Then we're going to be using these be reps. Then, as you can see, it extruded those out to the point. And it further creates this other truncation, I guess you would call it, where if you go to the midpoint and you extrude, you actually create more. Geometrical subdivisions. So that in itself further complicates or exaggerates the pattern. I feel like that's also a cool, neat feature that we came out with here. And so let's bring in the geometry, or the display, or the custom preview. And let's take a look at what that looks like here. Let's move some of these sliders around, right? Because this is fully parametric, so we can always come back here and play around with those. The thing is, we want to display this to see what pattern it's going to be eventually. Here I'll disable the preview on this. And we can see this is what it's going to look like again or now on the new one. If I change this around, is based off of five now and I find a cool pattern and let's say that one. Then I'll click here on the plus sign. It's going to calculate. And now I can go back here and preview it again, and it will calculate it using that pattern. Ultimately, if this is just going to be, let's say, a floor tile design, we would actually take a different approach. So we'll call this an option. Maybe this could be like a wall or something that could be more of a display. And we'll unplug this only down control. And here now we'll be creating some grout lines. So offsetting this to the inside, possibly just by using a scale. And then we will have a cool pattern that then we can use as a tile, and it will be way more obvious this way. We can also change subdivisions because here we have it at five and before we had it at six and I feel like that actually looks really cool. Let's move this around again. There it is. Okay. I'll use this one. Now we can disable the preview on this and take a look at what that looks like at the end. Now we can use this pattern and we can scale it down. 6. FINALIZE PATTERN AND SCRIPT: Take those or this spirit. Oh, group this and move it to the side. Now here with this one, I'll bring in the area component, the once again, the mid point. Now we'll be using scale. Plug-in. The geometry. We're going to be scaling it relative to each in one of those center points. And just enough that it leaves a gap between everything. So we'll go 0.999. Disabled preview on everything else. Now, let's move this down a little. Here's the thing that creates uneven gaps. And so maybe that's not the best way to do it. The best way to do it. It's gonna be to do this. So it's a little bit tedious, but I feel like it's gonna give us the best, the best thing here. And some of these things do are a little bit tedious in terms of it takes a while for it to be exactly what you want. So if I want this to be, have a perfect spacing in-between, then I have to do certain things like I have to join this B-Raf. This way. It's all one and we don't have overlapping lines here. We only have one segment. Now I could do the B-Raf edges because I can extract the inside and outside lines. So with that, I can do multi pipe. So this is a bit of a trick here to do the interior lines because that's really what matters here. Caps. We'll go here to round and we'll change the size of it. So I'll go 1.500. And if you guys have seen my videos before, I typically multiply two numbers to create the proportions for the multipath here. So I'll go here to multiplication. And I'll multiply these two numbers. And that's to keep the proportions between the two. And so this goes into the outsides, end and offset. And this then goes into stress size. Now we can decrease this value and this one takes care of the connection. Now that we have this entire sub D pipe, and it's all one because we only have one line segment and it creates a really clean here. We're going to go to intersect B rap. With this. The sub D pipe is going to go into this B-Raf. Now it's not a B-Raf, it's a sub d. So that might give us an issue. But here at the end, I'll go to boundary surfaces just for the outside surface and intersect it with that. So now this becomes the line work. And it's evenly everywhere and you can actually play around. And this is where we also would do a data dam to do this. Because it's taking, it's going to take awhile. Like if I change this a little bit, it's going to take awhile for it too, for these connections to update. And you can see that also on my cursor. This is where we can create a data dam in terms of it. Here. Before it goes into this one, we can take a look at what it's gonna look like. Then if that's what we want, then we press the Play button. I'll disable the preview on that. Next, we need to do is take this. And let's see here. Go to boundary surfaces. So it creates it for that one. And then Region difference between the overall offset, this one, this region. Then this, if it works at this one, it's not letting us do it. So let's go here to boundary surfaces, see it apparently surface that will work. Or if then. So if that's the case, then I do have to go in here into this one and go to deconstruct or explode, and then join them again as individual segments. All of these then do boundary surfaces. Let's see if that works. It creates a boundary surfaces for all of these separate segments. It does. Okay? So that is a different way of doing it. Now, as you can see, after it, it's a very heavy, intense calculation to come down to creating kinda like the grout, the tile. We don't need that. And now we don't need to preview any. So we have this. So we'll use this one, the top, and then these are the bottom. We'll have to use two different colors. So we have this one. Now I'll extrude that a little bit. So we'll go here in the z-direction. This as that input. Then we'll do the same thing, extruded up. Now, using this will be extruding. And do you sing a different color? So as long as we extrude this one out a little bit more. So we'll say this would be 1.5 and then we'll do minus 25. This one. If we want the difference between the two, not be so much more than we go 0.1. And if that's the grout thickness will, then will make the extrusion for the outer band the same as before. So hopefully you found that useful. For the most part, the cool thing is creating these custom patterns using circles and then extracting it. And from there we can add more details. We added the grout line, we added the subdivisions and the outer band. We extruded it up. Here at the end, I'll be doing more than anything. Cleanup here of the script and a few renders to kinda presented. So thank you very much for being here and for watching, and I hope to see you next time.