Creating Semi-Circular (Tubular) Loft/Extrusion along Complex Curves

Good Morning Everyone,

This one is tricky (for me) - I have a set of parallel 2d curves that twist and contour around, and I would like to give them semi circular lofted 3d volume along their length … a little like a ‘michelin man’ quilt volume. These lofts would also be separated into shorter sections, like a patchwork quilt.

I attach sketches showing what I have and what I’m trying to acheive. Any ideas?

so far I have managed only with ‘catenary’ to get a sort of harshly curved profile stood up at the end of each ‘patch’ of the quilt. I have not managed to loft between them. I imagine I would need to make the loft from a network including the ‘rails’ formed by the parallel curves in order to closely follow the twists and turns?

Any help would be highly appreciated.


JJC. (157.5 KB)

Something like this? (158.4 KB)

1 Like

Hey Kim,

That looks awesome - thanks so much for the fix - going to study it now :grin:

btw … When I open .gh, I get an unrecognized object warning for Multiplication, which is odd - replacing it and connecting up works perfect though.

If you don’t upgrade your rhino installed, you’ll get the same warning continuously…

How would you go about splitting the loft into sections (U & V - as per original curves)?

Is it best to make the whole surface loft and then split, or make each section separately?


I don’t understand what you mean.

? … Is this what you are after? (163.2 KB)


Oh wow, it looks exactly what I’m looking for in your preview.

The ‘Split Brep Multiple’ I must update Grasshopper for it? (167.7 KB)


Hey Kim,

Thanks so much for all your help with this, I really appreciate it, and I’m learning a lot from the way you are doing things!

A couple of (hopefully quick) clarifications - I tried to fix myself, but to no success yet:

  1. Is there a way to organise the data tree so that the branches run in columns left to right (as currently) and the surfaces within each branch run in rows from top to bottom?

  2. I am getting a couple of sections which aren’t cutting correctly (which appear to look fine on your screenshot) - is there something I’m missing?


JJC. (155.7 KB)

You’ve already used Sort List several times…
Is there any reason not to use it in the case?:face_with_raised_eyebrow: (159.0 KB)


Yes, you are a star! I didn’t find the right spot and organisation. Thanks.

Any idea why the cuts would all be working at your end, and not over here when I open the file?


I will say “classical” tolerance issues !!
Open in millimeter, inches or whatever, Grasshopper don’t care. But Tolerances are important here with 1 unit tolerance. Don’t forget to click on Recompute in Grasshopper after the tolerance change

And 0.001 unit tolerance


hmm, your screenshots show this working for you, but I’m having no luck!

How strange and frustrating!

Is there anything else I can do to help - considering I just spent 30 minutes trying variable tolerance options and seeing various changes happening but never appearing as Kim and you see it?


Do you use Rhino 5 or 6 ? With Kim we use Rhino 6.

Yes I noticed from the icon you are using Rhino 6. I am using Rhino 5.

The issue is happening between the ‘Shift Path’ and ‘Surface Split’ component. The ‘Brep Intersection’ is correctly computing all of the cuts, but the Surface Split is not actioning them.