Tween Two Curves Along Curve not working as desired (Grasshopper/Pufferfish)

I need to loft between two sections (2 closed curves in parallel planes) guided by specific rails.

There are a bunch of ways to do this, but I’m still looking for the cleanest way possible.
Just lofting using the loft component wasn’t working very well, so I tried other methods like lofting between connecting lines between both sections etc.
I was hoping the tween curve component would do the job, but the interpolation is linear and I need a very specific shape, as shown in the picture.

I’ve installed Pufferfish and found this Tween Two Curves Along Curve component which was very promising. But after trying to add the required guides (black curves), it just does not want to do what I want it to do. :stuck_out_tongue:
It should go through every guide rail, especially the bottom curve and the flat top and right side.

I’ve attached an example .gh file with the right curves that need to be lofted and the specific guiding rails that need to be accounted for. I also added the (sort of) desired result that I created in a different (but more elaborate) manner. I wanted to improve on that by using these tween curves. It looked promising, as I said, but not quite what I was hoping for.

Thanks in advance.

Tween Between two curves guided test.gh (36.4 KB)

You misunderstand what a guide is. There can be a max of two guides the logic is like a sweep 1 or sweep 2. (Hovering over components and their inputs will give you useful information about what components need) I suggest adding a third curve to loft. Or use network surface with your current curves and cross sections.

(Or maybe I misunderstand. Most of your curves are black in the screenshot)

So that you understand the tween along curve components have a same logic as sweeps. Profiles would be the curves in green (curves to tween), Guides (one or two) would be the curves in blue.


Tween along.gh (10.1 KB)

If you want the curves in the other direction (which I think you do), you just need two curves as guide in that direction. (preferably one along the section ends and one along the section centers for the result I think you want)

Then you can loft them


Tween along flipped lofted.gh (12.9 KB)

However, to get the control you might want using all those crossing curves spanning the sections I suggest opening the back of the section curves then using network surface or Pufferfish’s automatic network surface.


Network.gh (9.0 KB)

Well, I do know that you can only use 2 guides, but I wanted to use more, you see. If I was using only 2 guides, then the resulting tween curves would not be within the desired boundary (as given by all the black lines/curves). All boundaries, except 1 is then satisfied, that’s why I kept adding ‘more than 2 guides’ to force the tween curves in between the desired boundaries. Which clearly did not work properly.

I’m going to look into the different options you suggested and I’ll report back. Thanks a lot!

I haven’t had much time, but just now I’ve found a clean solution to my initial problem.
I wanted to share this, because it might be an interesting (ready-to-use) addition to the component I’ve used.

I’ve tried your suggestions but none of them did exactly what I wanted. Neither the tween curve along guides nor the network surface generated a clean surface, while the tween curves interpolated linearly, which was not the desired result. The latter made me think whether I could redistribute the generated curves to the desired parabolic/quadratic distribution and that’s exactly what I’ve tried.

I generated parabolic factors for the tween curves between my 2 profiles using a graph mapper. Then I redistributed the curves again linearly. Even 1 tween curve is enough, as long as it’s redistributed at the right position.

So, it might be useful to add an extended Tween Curve component, in which you can specify the distribution (linear, quadratic, cubic, etc.). Unless it already exists and I could have used it all along.

You can do it with the tween through curves component. The I input let’s you change the interpolation type. The component requires atleast 3 input curves.