Seeking logic for Parametric Tissue Box with Organic Wave Patterns

I’m trying to recreate this tissue box design (attached) in Rhino/Grasshopper and would love some advice on the best workflow to achieve these organic, flowing waves.

From looking at the form, I’m considering a few different approaches but I’m stuck on which would be most efficient for this specific “pinched” wave look:

  1. SubD Workflow: Creating a base box and using Grasshopper to manipulate control points or using the SubD Bridge/Multipipe logic, then refining the “ridges.”

  2. Surface Morphing: Designing a single “wave tile” and using Surface Morph to map it onto the four faces of a box, ensuring the edges meet seamlessly.

  3. Graph Mapper / Attractor Logic: Starting with a high-density mesh or NURBS surface and using a Graph Mapper or Sine wave functions to displace the vertices along the normals.

The most challenging part seems to be the way the waves transition around the vertical corners and how they vary in depth.

Has anyone tackled a similar “parametric drapery” or “sculptural ripple” effect? Any suggestions on components or plugins (like Peacock or Weaverbird) that might simplify this would be greatly appreciated!

Thanks in advance!


I did this a while back:

It’s a Loft surface made from a stack of circular control curves modified with X, Y, and Z values. It might be possible get close to what you want by using filleted squares instead of circles, but I wasn’t able to find a way to blend the merging of one control curve into another.

I’ll be happy to clean up my GH file if you want to try it.