Aligning and lofting multiple shapes in Grasshopper


In Grasshopper, I’m trying to loft a series of curves (824) created from a combination of Voronoi diagrams. The issue is the curves aren’t lofting to the closest curve but rather a seemingly random one, creating geometry that looks like a ball of yarn. I’ve tried rebuilding and dividing the curves, closest points, and pull point with no luck. Hoping to avoid having to manually loft all 824 curves. See below screenshots. Any ideas would be greatly appreciated!

Showing lines connecting points in lieu of the loft because it crashed my iMac.

Rhino 7 | Mac

Did you reference these loops from rhino model?
GH doesn’t know which one should be lofted with which. You’ll have to make your own proximity test of some kind. You’d get better help if you uploaded a file.

That is what I’ve been trying to figure out and have been wildly unsuccessful. How to tell Rhino or GH to loft to the closest shape. Rhino file attached.

I referenced each set of loops as a group front and back.

Thanks again!

LobbyWall_2.3dm (3.6 MB)

R7 file cannot be opened in R6.

Rhino 6

LobbyWall_2_V6.3dm (1.3 MB) (38.7 KB)

1 Like


Thank you so much! I’m still a rookie at GH, very much appreciated. You saved me so much time.


Thanks for the love, to me it seems to be in very short supply…

I’ve spent an absurd amount of time trying to make a solid (holed) wall using these lofted curves. I finally succeeded using an extremely SLOW SDiff component with 1,646 holes, but not before purging a couple of duplicate curves (yellow group) that fouled all efforts for quite awhile.

The ReB (Rebuild Curve, cyan group) is optional but seemed to smooth some of the holes. The Reduce component (white group) is for testing with a value of 0.98 on the ‘reduce’ slider (blue group) to minimize the painful 15 to 22 minute delay of SDiff. (ouch!) (569.1 KB)

All curves are internalized, no need for the Rhino file.

1 Like

Wow you have gone above and beyond! Thank you so much!

I’m still very new to GH, so much to learn.

Thanks again,

Using the painfully slow SDiff was a last resort in this case, after trying many alternate methods that involve joining the lofted curves with two holed surfaces and the wall edges. All failed.

I figured that you tried RDiff as an option, but I just had to try it for myself and found that it was painfully slow as well.


At last! Here is a fast version. I had to resort to using BANG! (twice!!) but it works. (Closed Brep) (577.5 KB)

Hey Joseph,

This is great! One question, if I want to replace the void pattern with a different one. Do I “set multiple” all the void shapes for both curve nodes? Or are there a few more steps to it?

Thanks again for all your help.

I don’t understand what you mean? It should be a straight-forward replacement of the two curve params (the holes and the edges). Remember that yellow group was added to remove duplicates, which should never have been there in the first place.

I was replacing the wrong curves at each params causing Rhino/GH to crash, classic operator error. I got it now. Thanks again for all your help.

I post a picture once this wall is built and installed.


Some of the complexity in this model could have been avoided had I selected the curves from the Rhino file more judiciously, or treated them as two holed surfaces (below, yellow group). The two duplicate curves may still have caused trouble but that’s a separate issue. (1.5 MB)

If the entire model (the Voronoi holes) were done in GH instead of Rhino, such organization tends to come naturally.