Grasshopper

algorithmic modeling for Rhino

Hey, I am trying to create something similar to the picture added. I created a general form and I want it to be perforated similar to the pic(maybe with voronoi?). but I have no idea how to do it.

Plus, it's more complicated, but maybe anyone would know. In some areas I want it to be like a regular wall, so it need to gradualy fill in the holes.

Thank you for any help!!!

Views: 5485

Attachments:

Replies to This Discussion

hey dana,, 

i hv just created voronoi geometry over a surface ..... i hope that helps u a bit..

Attachments:

Yo.  17.4 minutes for your code ('SrfSplit') to render!?  OUCH.  You might have warned us...

Thanks!

Here is a variation of MANU's code that is much faster - about ~40 seconds to render:

voronoi_2015Dec20a.gh attached - a couple of problems with this approach, however:

  1. The scaled surfaces are no longer congruent with the original surface.
  2. It results in surfaces where the holes should be instead of a surface between the holes.

Here are a few changes that fix these problems and is even faster!  ~30 seconds, due to using 'Shift List' instead of 'Area' to filter out the results from 'SrfSplit'.  It uses 'Pull' to get the scaled curves onto the original surface (problem #1) and then trims a single hole from each of the surfaces that resulted from the first 'SrfSplit' (problem #2).

It also offers the option of "Sharp" or "Smooth" holes.  voronoi_2015Dec20c.gh attached

Surface is internalized, no need for Rhino file.

P.S.  Thanks for starting a reply MANU, I might not have touched this otherwise.  I wonder how many times this question has been asked and answered on this forum?

Attachments:

Thank you so much!!!

Unfortunately, the first alternative surface I tried failed miserably due to my assumption that the largest surface result from 'SrfSplit' (to be discarded) was always the first one.  That wasn't the case in my test parabola surface so I had to sort them by area, which adds significant time (~30% more) back to the process...

I also added a sphere and a cone as test surfaces and for reasons unknown, they are "blotchy"...  I can see some reasons and possible fixes but this will have to do for now.

Attachments:

This version works for all three of my test surfaces:

Attachments:

HEY ... JOSEPH.... THNX FOR D REPLY.... YOUR DEFINITION WORKS GUD......

... N CAN YOU HELP ME OUT IN PLANARIZING THE VORONOI SURFACE BY USING KANGAROO TOOLS...

"GUD"?  Sorry, I haven't tried Kangaroo.

WAY BETTER and FASTER too!

I thought I could remove a bottleneck in this code by removing the need for the 'Area' component, which was taking a lot of time.  It was providing two things:

  1. The area of surfaces resulting from 'SrfSplit' so they could be sorted to discard the largest one (in cases where a Voronoi curve crossed a surface seam, there are three resulting surfaces, not just two) and
  2. The centroid for each Voronoi curve/surface required for scaling the holes.

So I created a cluster called 'pLen' which returns the perimeter length of a surface (the sum of the lengths of its edges) to be used instead of surface area for sorting (#1).  And used another cluster I have called 'PtCloudCntr' that returns the mathematical center of a point cloud (#2).  Both of these clusters are extremely fast and worked fine together as a replacement for 'Area'.

But in the process, I discovered and fixed a couple things:

  • In those cases where Voronoi intersection curves cross a seam in the "Primary Surface", I joined the two pieces together before creating the hole - eliminating the seam from the results!
  • Somehow the optional 'Bounding Box' used by 'Voronoi³' component got lost (oops) so it was cutting off the results bounded by the random points instead of the "Primary Surface".  Fixed that and found later that in some cases (the 'Revolve Srf' in this code), it works much better to double the size of the 'Bounding Box'.  Since there is no penalty for this, speed or otherwise, the larger box is used for all surfaces.

The results are MUCH BETTER than before.  Surfaces don't lose their edges, holes aren't corrupted by seams and the code runs in roughly 2/3rds the previous times (30 seconds instead of 45 seconds for 438 holes as in prior code).  For 100 holes, it takes only six to eight seconds to change the "Primary Surface" and get a new holed surface.

This 'Revolve Srf' is substantially smaller in scale than the other surfaces and due to its apparent complexity(?), it starts to degrade in quality with "large holes", i.e., less than 100 holes:

Attachments:

How can I apply the voronoi to a shape that I make !?

Attachments:

Just plug your surface into the 'Other Srf' input:

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service