Sweep1 - linear change of cross section width

I’m trying to sweep a bridge cross section of varying width. I’m not satisfied with the default way the outer edges of the resulting solid are handled - they seem to always be perpendicular to cross sections, which means that on a segment of varying width the edges are S-shaped. I need the edge to stay linear with respect to the sweep rail.

I’ve reduced the problem to a simple example:

  • A straight line in the XY-plane for the sweep rail.
  • Same cross section inserted to both ends of rail.
  • Width of the end cross section reduced significantly on one side.
  • Sweep1 with default settings.

Actual outcome (Sweep1)

Desired outcome (produced with Loft, but I want to do it with Sweep1)

The resulting S-shape of the corresponding edge is visible in the screenshot. How can I make it a straight line using the Sweep1 command (in this instance I can use Loft, but the bridge axis is, generally, much more complex)?

To connect sections with straight surfaces try Loft with Straight Sections instead of Sweep1.

Thanks, that does work for this simplified example, but that’s not what I’m after. Unless I can loft along a rail curve, it won’t work for a general bridge geometry. The change of width might be happening along a circular arc or worse which can even have parabolically varying elevation.

Although it’s preferable to design the bridge in such a way that the width changes occur on straight segments only, this is not always possible. The internet is full of tutorials on how to model bridges in Rhino/Grasshopper, but I haven’t found any that deal with difficult spacial constraints.

Try the Global shape blending option in Sweep1.

Another option is Swee2 with the second rail so the width can be explicitly defined.

Hello- trying to reproduce your setup here, I can only get straight sweeps.

What am I doing wrong?


Thanks, it seems I’ll have to use Sweep2 then.

For the sake of completeness, Sweep1 with global shape blending works for the straight rail, but it doesn’t work as desired for an arced rail.

In another example, I used an arced rail and an intermediate cross section. Between Start and middle, the width is constant and then it decreases so that the inner edge remains straight. Global shape blending actually deformed the edge even more than the default setting, see below.

Sweep1 default (without GSB)

Sweep1 with GSB

Sweep2 (desired outcome)

I’m not happy to have to construct the edge curves, but there seems to be no way around it. Now that I have modelled it, I can see that the narrowing edge isn’t actually linear with respect to the center axis.