generative modeling for Rhino
In response to this discussion:
http://www.grasshopper3d.com/photo/mesh
I am posting my definition for generating an open foam mesh.
(I didn't post back at the time because there were some troubles with weaverbird back then and I was having to use some ugly workarounds, but now that is all fixed)
To sum up the approach -
take a random cloud of points
generate the 3d voronoi
scale the edges of the cells towards their centres, and also towards the centres of the faces.
connect these 2 sets of scaled edges with mesh quads and join
cull some of the outer faces
subdivide and smooth with weaverbird
(In the video there were some other variations on the smoothing/relaxation, both of the initial point positions and the final mesh, using hoopsnake and/or kangaroo)
Tags:
Permalink Reply by Mateusz Zwierzycki on April 9, 2013 at 5:19am If naked edges form any regular loop, you can always use slTopoSphere from the Starling plugin. I probably should've called it just "cap mesh". Similiar effect may be achieved with "naked polylines" from WB and then applying "wbTile".
Permalink Reply by Vicente Soler on April 9, 2013 at 5:53am Thanks Mateusz. slTopoSphere reduced the number of naked edges from 131 to 1 (26 closed loops, 1 open). Not bad out of a total of 32521 (before subdividing).
Permalink Reply by Nick Tyrer on April 9, 2013 at 8:08am Maybe throw in a little variation of point population before you print it. Increase the density in the smaller areas, like fingers. Will improve the resolution where its needed.
I've done it pretty crudely, the transition between tight and large is too abrupt, but i think with the right gradual transition it could look quite elegant.
Permalink Reply by Milo Rambaldi on April 10, 2013 at 1:42am Not a bad idea, how do I go about doing that... INtroducing extra points in the populate geometry NOD or adding points with a bounding box constricted to the area where the fingers are?
Permalink Reply by Nick Tyrer on April 11, 2013 at 11:37am Yeh exactly Milo, i used two bounding boxes for quick results, one on fingers, one on thumb. I will have a look for def. But not sure if i saved it sorry
Permalink Reply by Milo Rambaldi on May 7, 2013 at 10:08am Hey, I'm wondering if anyone knows how to solve this issue - I made up a model, I fixed it with closing the naked edges and using netfabb for closing wholes and preparing it for 3d printing, but it seems that the walls on the finger tips are too thin for the fabrication and I haven't understood the definition quite as good to know how to filter perhaps those walls and scale them by the factor of 0.5 instead of the 0.85 that is predetermined in the script. Any kind of help would be appreciated :/ Thnx
Permalink Reply by Milo Rambaldi on May 9, 2013 at 10:30am I did something like this, found a way to scale only the cells near the fingers I guess it did the job
Permalink Reply by Katie David on April 16, 2013 at 1:48pm So I'm just learning grasshopper and trying to use these awesome definitions in my model. How did you get this definition within the hand volume above? I can't seem to get the skeletal mesh to populate within a specified volume (trying to used it in a tapered cylinder).
I've tried setting the region as my volume but it just makes a bounding box around that shape. Is there a way to populate the 3D point field within the desired volume? Sorry these are such basic issues, I'm Learning. I would really appreciate any help that anyone could give me. Thanks in advance!
Permalink Reply by Vicente Soler on April 16, 2013 at 2:16pm That definition is for when the input geometry is a mesh object. If you have a cylinder you can use the boolean intersection component to get a cylindrical shape out of the voronoi cells.
Permalink Reply by Katie David on April 16, 2013 at 6:42pm Yes, but then I don't have a closed surface. I would like all of the edges to connect with one another. So instead of having it look like the first model pic you posted of the hand, I want it to look like the third. Is that controlled by the grouped components in the definition? If that's the case, then I just can't seem to figure it out. I also tried converting it to a Mesh...still no luck.
Thanks for replying so quickly, I'm nearing the end of a project deadline and haven't been able to figure this out yet.
Permalink Reply by Vicente Soler on April 16, 2013 at 7:39pm Here you have. The grouped part is the one closing the naked edges.
You have to close only the faces that form the skin of the volume. One way of doing this is to find out which faces don't have an exact duplicate.
Permalink Reply by Katie David on April 16, 2013 at 10:27pm Thanks so much. You have been a tremendous help.
© 2013 Created by Scott Davidson.
Powered by