algorithmic modeling for Rhino
Hi, a newbie here. I would like to create a surface and manipulate the height of its grids, but it turns out that the 1000+ grids really slowing everything down. I wanted to apply a definition from this blog http://bit.ly/22eCLl2 to my project, and since the area that needed to be covered is very extensive, it needs a lot more grid. I really want to keep the surface as smooth as possible, I tried to work with 5x5 square grids to speed things up but its very rough and pointy (and its not exactly speedy as well). On top of that, the very end part where I have to create a surface from every grid, it takes at least 5 minutes to even change the slider a little.
1. Is there a faster way I can maybe do this? Should I use anything different or scale the model down or something?
2. The final form of the surface would follow the outline of the site that I have, requiring trimming after achieving the desired form. Before trimming, since the NURBS (surface4points) aggravate the sluggishness, I tried replacing it with quad mesh but it simply said its invalid, so I tried once with construct mesh. but its still very slow. Is there another way to construct the final surface?
Attached below is the gh file, and here is the 3dm file http://bit.ly/1Uy0tWR I had to use dropbox since its about 40mb.
Thank you.
Tags:
HYPOTHESIS: To speed it up, stop creating geometry until the very end and then perhaps only efficiently display a point cloud. Just work with coordinates, pure math. Instead of just adding numbers, you are moving entire heavily data structure loaded Rhino geometry objects around with vector translations.
First, I notice you are multiplying your number of points by 4X above your grid point count by finding discontinuities, somehow. That's got to be a mistake but you are creating individual NURBS surfaces as output so we have to simplify that final step too so you don't need four corner points per face! And you are in fact multiplying another 4X by using grid *cells* in the first place instead of just a grid of points. That's a 16X handicap right there!
We also don't want to output NURBS as much as a mesh since they are much smaller and faster. We could build a surface also as a NURBS single surface patch though, if that turned out to be fast enough, and achieve smoothing naturally, whereas with a mesh we have to use math to obtain intrinsic "soft selection" smoothing or some form of post-smoothing. A normal NURBS surface with lots of control points would also work instead of so many little NURBS surfaces that might be joined into a polysurface.
Once I switch to a simple grid of points, the geometry issue becomes nearly moot, but keep that in mind for higher resolutions.
I don't understand the rest of the script enough to post a fix. There's two instead of one slider for each influence point and what it's supposed to do I'm not clear on. The article you link to does two separate things, only the first the it's appropriate to create an array of little square boxes.
The following file isn't yet functional but it sets up a simple grid of points and outputs a mesh. The movement of the points is not happening right, so the output is a flat plane mesh.
Hi Nik, thank you for pointing that out. I also found the discontinuity part was confusing, I think it has something to do with finding the amplitude, but I could not figure that out as well. I have worked a new one, a lot different with the one I uploaded here.
I bet this has been done so many times; From the beginning I am aiming at creating a model of my project, its similar to Peter Eisenman's City of Culture in Galicia. Its simply trying to create undulating surface, before I finally trim it according to the context of my project. I hope I'm going in the right direction. This time I just created grids, select some points from the data tree and split them from the main. But then since I still suck at handling data tree, the output where I tried to create the surface with surface from points is a big a mess. I tried delauney and patch, but it doesnt have the look that im looking for, and with the surface from points component, I could toggle the interpolation.
One issue is that the U value of the surface from points component is weird I can never get it right (that's why I put the slider there, tried to find out what's going on). I think the mess is caused by the splitting, where I am trying to first split the main data to find some points that the vector z i am going to control. And since there are different groups of these controlled points (Im planning to have more control on each of their height), I continued to split the tree until eventually all the group of points are split from the main data. And then since these created some null points, I used clean tree. After that I merge the negative of the first split, which contain all the points that are not controlled, with all of the other positive value of the splits, before connecting them to the final output mesh / surface. I still put the delauney and patch component in there in hidden mode. Its attached below.
Thanks again in advance, I really appreciate it.
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by