algorithmic modeling for Rhino
In response to this discussion:
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)
Alternatively try this definition. I've labeled the section that closes the mesh
That's awesome. Thank you so much!
I know this is literally 4 years later, but I'm trying to use these scripts and I'm wondering how you were able to get it to be rigidly defined by a cube. When I plug my geometry into the definition I get a skeletal mesh that is only bounded by the geometry not directly related to the defining edges of the cube. That might be a bad description, but basically how did you get the sharp edges of your cube in your mesh?
Hi there.. How can i connect four end Point outs to one Point Param.?
It seems impossible :D
Thanks Daniel Piker (; nevertheless, its very helpful to me!
To connect multiple outputs to one input just hold down shift on the keyboard when connecting
hi i'm having a problem using your script. i'm using about 10 different boxes and they are mixing all each others i'll send you the script.
Very nice discussion! Thanks.
I have one favour for you - could weaverbird catmull clark component output vertices and faces in datatree, where each branch represents primary face, (which was smoothened/triangulated) ?
This maybe (I am not 100% sure) will convert our meshes (Daniel's and mine) to geometry based on surfaces.
Here is a little proof of concept :
Mesh on the left was was obtained by meshing a surface.
Next it is rebuilded with surface from grid points component, which results with almost same surface as one used to make mesh (surface on right is made from mesh)
this is interesting: I've spent now a couple of hours of this Sunday evening to see what this would look like. In general, I think the subdivision component is more helpful when it returns a mesh. To put the two things together, here is a script that takes the mesh and separates it into several sub-meshes, each one being the descendant of an original face. This script works in general for this component.