If you can afford to use NURBS curves, Polypaths or Beziers with automatic handles, then I would suggest using corresponding points in the reference curves and interpolate between them.
Just sample the position of the referenceLet's use only two curves. A source curve and use a Mix Nodetarget curve. We are going to find an interpolatedadd geo nodes to the source curve, to instance it and the interpolate the duplicated splines to the proximity position.
- Resample the curve and get the closest position of the target curve (with the Proximity Node). Store the target position with the Attribute Capture Node.
- Instance the curve a few times in place. Capture the instance id and then realize the instances.
- By calculating
captured_id / instance_count
we will have a relative value[0, 1)
to mix the original point position with the target position. - Use the captured target position to mix the positions.
This setup is limited by the geometry proximity, but that was the premise of your questions title.