Grasshopper (or Rhino) referencing original surface - not the split one

Hi guys,

To keep it simple:

I made a geometry in rhino and the applied a 3D voronoi, manipulated it, scaled them down and then baked the results. I now want to panel the surfaces of those shapes (either with lunchbox or by using domains and divide surfaces) but each way I do it, grasshopper wants to reference the original much larger surface.

Is there a way around this? I have tried evaluating the surface - to no avail and curiously, when I apply divide surface, it’s gets it ok… but the domain and lunchbox tools always think it’s the original much larger surface.

I would greatly appreciate help with this.

Best,

Felix

  private void RunScript(Brep B, ref object sB)
  {
    B.Faces.ShrinkFaces();
    sB = B;
  }


sFace_2020Apr15a.gh (2.3 KB)

1 Like

ShrinkTrimmedSurfaces or ShrinkFaces is not the answer here I believe since you are dealing with Voronoi faces which means probably trimmed surfaces with more than 4 edges. This is a common misunderstanding of nurbs and is one of the most asked things in the forums. Look up things like “trimmed vs untrimmed surfaces”, ”panalize brep”, etc. In short, any kind of surface evaluation will always be evaluating the underlying untrimmed nurbs surface.

Here is an approach to panel trimmed surfaces with voronoi.
Hope this helps!

Best,
Mr.A

The goal isnt to add voronoi to a trimmed surface. It is to panalize voronoi faces by lunchbox panels or divide surface.

I made a geometry in rhino and the applied a 3D voronoi, manipulated it, scaled them down and then baked the results. I now want to panel the surfaces of those shapes (either with lunchbox or by using domains and divide surfaces)

1 Like

can you share any reference file?

Perhaps this helps!
Best,
Mr.AVoronoiSubPanelling_V1.gh (11.4 KB)

1 Like

Hi All,

Thank you very much for your answers. I think the sFace solution was the nearest to working as it cancels about 90% of the original untrimmed surface! Thanks Joseph.

Michael, I have tried searching through the forums countless times before posting and I cant seem to find a post that answers this sadly. Perhaps in the future someone will create a script for this. I may try!

Thanks Mr. A.

Cheers,

Felix

Perhaps in the future someone will create a script for this.

Not likely as their is no true answer, this becomes a design issue with too many conditions depending on you. Do you simply want to trim off the overhanging panels? try and deform them to fit? Create unique edge condition panels? What about corner conditions? Should seams line up across faces?

1 Like

I am afraid my knowledge is probablly more limitted than yours when it comes to the finer points of all this.

In my head I would like to panel complex surfaces without the program referencing the original untrimmed version or having anything to trim afterwards. It seems possible with simpler geometry. I.e. If i split a flat surface (with 4 egdes) then apply joseph’s sFace and then a lunchbox C Panel the original shape is gone (see below).

It seems Josephs sFace does a pretty good approximation on more complex surfaces though. (see below)

Best,

Felix

Shrink Faces just shrinks the underlying surface to be close to the trimmed surface. If your trimmed surface has 4 edges it will be fine. Try it with a trimmed surface that has more than 4 edges or a hole and you will see the issue.

1 Like

Cheers,

I would really like it if someone had an idea on this post: Proximity with Exclusions and animations.

Best,

Felix

Just out of interest… I was messing around with ‘contour’ and found it to be good work around as well!

Its excellent in the x direction, but not so much in the Y on complex shapes.

Best,
F