generative modeling for Rhino
I want to spread point randomly within a brep, that I got from creating lofts between curves. The surfaces should work as a border for the points and the voronoi cells I want to build. Can someone help me?
you can distribute points randomly within a Box volume using the [Populate 3D] component in the Vector.Grid panel. The populate component inserts points randomly, but also makes sure the distribution is fairly smooth. It is therefore a special kind of random. It is also possible to randomly create points within a box volume using the Random and PointXYZ components if you're unhappy with the 'smart' points created by Populate3D.
Now, on to your brep. It's possible and fairly easy to remove points that are outside a brep. So you could first create a 3d point population that encompasses the entire brep, then remove all those points outside of it. This however will not allow you to control exactly how many points will end up on the inside.
It will be quite tricky to create a well-balanced distribution of N points on the interior of a closed Brep. Please let me know if you're looking for an exact count or not.
Hey, thanks for the quick answer! I added the files to my post! As you can see, I want to use the cell-borders of the voronoi diagramm as inner-structure. Therefore the loft/shell needs to intersect with it!
By changing the number of points within the loft, I could controll the number of cells/spaces inside the shape and the density of the columns. Is there a possibility to use Inside from surface.analysis?
I'm not entirely sure what you're after, but I attached two files that fill a space with 3D voronoi cells. Hope it helps (and hope you can open them without problems).
They are both pretty slow, my 3D voronoi algorithm doesn't use volumetric delaunay optimization...
Thanks again! I'm managed to get the cells.
But when I transform it into a mesh I couldn't get rid of the net wrapped around the cells. I tried with mesh split but it didn't work. I added the files, so you can understand what I mean.