Better way to morph brep along curve?

I’m looking for a way to continuously twist a brep along a curve. My current implementation approximates this by using the Pufferfish Twisted Box Curve component to build a series of twisted boxes, sectioning my original brep into matching base boxes, and using Box Morph to warp each section:


Base shape


Shape sectioned into pieces


Twisted boxes to create curve


Sections morphed to curve

…and by cranking up the section count I can approximate a curve. But it’s never a real curve, and it creates all sorts of side effects in my real application (where the shape is more complex).

Is there a better way to think about morphing a brep in a more complex way than twisted boxes?

twist-morph.gh (37.3 KB)

If the goal is deformation of an object around a curve then you wouldn’t use twisted boxes, they are not for that, twisted boxes are for cell type things or panelization.

If your geometry is a simple pipe like this then you can use things like the Pipe command, Sweep1 with a circle profile, or Loft a bunch of circles along a curve path.

If it is a more complex geometry you want to deform, then look at components like Flow or Twist, both found in Grasshopper’s Transform > Morph tab.

1 Like

Sigh. So you’re saying that I reinvented an octagon when there was a wheel right there?

Thanks! That works much better.