Morphing a Rectangular Grid to a Curved Grid in Grasshopper

Hi everyone,

I’m working on a morphing workflow in Rhino + Grasshopper and I’d like some advice on how to structure it more efficiently.

Goal
I have a 2D rectangular grid (a planar layout) and I want to morph it onto a curved grid (non-orthogonal grid defined by curves). Ultimately I’d like this to work both in 2D and in 3D with multiple “layers” of volume.


1. Morphing a 2D rectangular grid to a curved grid

Is there a recommended way in Grasshopper to morph a 2D rectangular grid (straight U/V lines or rectangular cells) into a 2D curved grid (curved U/V lines), while:

  • keeping the cell topology (same number of rows/columns)

  • and avoiding too much distortion if possible?

I’m wondering which tools or typical workflows people use for this (e.g. Surface morphing, FlowAlongSrf equivalents in GH, paneling tools, etc.).


2. Morphing 3D volumes while keeping layer structure (no boolean union)

I’ve also tried a 3D approach:

  • Start from a 2D rectangular grid.

  • Give each cell a height (Z value) to build a series of stacked / layered volumes.

  • Do something similar on the curved side (curved grid + Z values) so that I get a 3D volume to morph onto.

I managed to morph successfully when I treat everything as one single volume (after doing a Boolean Union, for example).
However, what I would really like is:

  • to keep the vertical layering / stratification (separate “layers” or sub-volumes inside the whole mass),

  • and morph the entire system without having to Boolean Union it into one solid.

Is there any strategy or component setup that allows this kind of morphing while preserving the internal layer structure (e.g. multiple volumes or sub-solids) rather than merging everything into one solid?


3. Other efficient morphing strategies?

Finally, are there any alternative or more efficient morphing workflows for:

  • mapping from a rectangular base grid to a curved grid,

  • and handling layered 3D volumes in a clean, parametric way?

Any references, example definitions, or component suggestions would be greatly appreciated.

Thanks in advance for your help!

MORPHING.gh (9.9 KB)

MORPHING.3dm (12.0 MB)

I feel like the Paneling Tools plug-in might be the solution

Unless I misunderstand your meaning, you shouldn’t have to union anything. If you spread out your objects on the source surface and pass them all to the same target surface, they’ll all get Sporphed by the same amount. Use whatever grid, array or other method you like.

General morphing and bending of the form will be OK. I would do the morphing before putting in windows and mullions. Then insert the windows and millions on the 3d model. This way the windows do not deform. Perhaps use placeholder objects for the window placements during the deform.

For most complicated facade work, PanelingTools is the best way to do this. Morphing has some flaws in how spacing works and how it will deforms the grid that make it less accurate for real Facade work.

Take a look at this post, it may help: Equal Grid Across Surfaces - #6 by dan14