Tween curve influenced by curved shapes

Hi everyone,

I’m working on a curve interpolation problem and I’m trying to find the best workflow (Rhino or Grasshopper).

I have two main boundary curves (yellow), and I want to generate intermediate curves between them (like TweenCurves), but with a deformation influenced by internal shapes (blue curves).

Right now, a standard TweenCurves gives me uniform interpolation, but what I’m looking for is something more controlled:

  • The intermediate curves should “react” to the blue shapes

  • Basically, the curves should be pulled or deformed locally where the blue curves are

  • The effect should propagate smoothly along the length (not just a simple offset or scale)

So it’s like a tween + attractor-based deformation

I’m wondering:

  • Is there a way to do this directly in Rhino?

  • Or is this more of a Grasshopper setup (using attractor fields, curve morphing, or graph mappers)?

  • What components/workflow would you recommend? (Tween + Point Attractors? Curve Closest Point + Move? Field-based deformation?)

Any guidance, examples, or references would be really helpful.

Thanks!

A picture is worth 10 words. Code/ Rhino file is worth 1000.

hahaha Absolutely, here is the picture and rhino file

FP.3dm (70.8 KB)

Hello Laurent, hope you’re doing well!

I tried what you suggested and also used your plugin (which is great, by the way). However, when I apply it to the lateral curves (mine), the lines don’t stay straight along the sides—they keep curving and end up forming a loop. I also tried the other script, but I’m getting the same issue.

This is for a ceiling with a rectangular boundary, but it always behaves like this, as shown in the image.

FP.gh (79.9 KB)

FP.3dm (80.1 KB)

As lateral curves are rotated 90°, change the Y to X here


Instead of Graphmapper you can control with sliders genpools, just need 5 values 0 for a lateral, 1 for another lateral and others values for holes