Loft along the shortest way (like a stretch fabric would do)

Hi Guys!

as the title says I’m looking for a way to get a double curved surface over some curves - but not like the usual loft commad works. I need to show how a fabric which is streched over these curves would behave. So the loft command would have to take teh shortest way over these curves and doesnt have to “pass” each one.

Do you have any ideas? Later the solution should be also done in grasshopper. So maybe there is a geometrical way without extra plugins.

Thanks! Julian

Hi Julian Loft with Style = Straight Sections might get you something somewhat closer to what you are after - it will not be right but maybe you can work from that.


Hi Pascal,

thank you for your response. Of course, by setting the style to “straight” I get the shortes surface between each input curves - but it’s still not the shortest loft overall.

If you imagine a fabric on a real model, the fabric would just skip the curves which are “inside”. I already experimented with alle the lofts options. I think there has to be a way by manipulating the input curves. Also tried to project and intersect them - but still not good enough


Sounds like you are asking for the “convex hull”. There may be a plug-in for it.

Ah, ok, I thought you were mimicking a ‘tent’ through the hoops.


Hi David!

yes, there is a convex hull command, but it only works in 2D. There are also a few custom definitions for something like that in 3D but I as this calculation is part of an iterative optimization process it might take too long. I’m sure there is an easier way instead of getting a rough mesh trough hundrets of points

shouldn’t he just deselect the interior arc? or use “loose” on the center sections and tight on the exterior ones?


“loose” sometimes does a better job yes. The problem is that the position and size of these rings under the membrane will change. Thats why i have to rebuild it afterwards in grasshopper, to keep it parametric.


if i understand correctly, this is going to be pretty tricky… i think starting off in grasshopper may be the best bet.

Hi Jeff!

exactly yes, thats the tricky thing. Because the lift command always will pass every single curve. I already started in Grasshopper with manipulating the curves before the loft command. If you want you can have a look. (22.2 KB)
LOFT_TEST_160517.3dm (138.0 KB)

Hard to explain but this result is the best i have so far. But to get a perfect (strechted) surface i would have to intersect every single curve with each one of the others and then somehow combine all the volumes.


probably try Kangaroo:


this could be an option yes. Could you send me the script with which you got that surface? I used kangaroo some years ago and I didnt thought of it now because I remember it always took some frames to get the final surface (because it’s a real time physics engine). Is there also a way to just get the final outcome immediately?

As i need the surface as part of an optimzition process I cant wait for kanagaroo to get in form. But yeah, this could work somehow, thanks for the tipp!


that’s just a quickie where i manually selected the anchor points to a set group of curves… i’ll try something a little more parametric today or tmmr and post the .gh if successful

heh, this is really hard (for me)…

i thought i had an approach figured out but it messes up in many cases:

it’s fully parametric but…

if i were to just relax the mesh between the two outer curves (red) then it would bypass the mid-section of the middle curve… once it stretches over the higher points of the middle curve, it then changes how the mid-section is stretched and it should now touch/anchor to the full curve… instead of going through it as shown in the picture.

new approach is needed :wink:

maybe this weekend i’ll give it another whirl.

i’d post what i came up with so far but it’s a pretty good mess at the moment…


now you started to challenge yourself. Fantastic, let me know whenever you find a solution. Thank you anyway!