Flow along curve: resultant shape has strange twist

I’m having a problem with the Flow command. The problem file is uploaded. All the parts are on different layers with descriptive layer names. I want to flow a shape along a closed curve with the stretch option. What happens is the target shape gets twisted. In the file I included the desired target shape as a comparison. Please note that the source and target geometry is a simple cylinder, but my actual project uses more complex geometry. I’ve simplified it so you can clearly see the problem, but the curves are exactly what I’m using in my model, so please don’t suggest using the pipe command.

FlowCurveProblem.3dm (145.9 KB)

Rhino for Mac version 5.0 Wenatchee 2014-04-01 (508)
Mac OS 10.7.5.

I think the problem is because the rail you are flowing along, rotates to vertical.
I would try splitting your rail where they flip and self-intersect.
Then try flowing one section at a time and Join the results.
If you change the orientation of the rail so the vertical part is in a different place, you’ll get the flips in different locations.

It’s unfortunate your rail can’t be rotated into an orientation where it doesn’t have any Z aligned points.

_Sweep1 ? (and maybe _OrientOnCrv to set the profiles in place if necessary)

(hard to say since you haven’t shown the actual shape… but sweep1 can also be used to get an idea of the problem you’re seeing with flow… it will only work out right if you use the freeform option while the others will do similar twists)

John, I changed the orientation of the rail and the twist moved to a different location, just like you said. I’m going to try flowing several iterations with the rail in different orientations and splice the good parts together.

Jeff, thanks but my geometry is a group of polysurface modules, so sweep won’t work. Imagine trying to flow chain links across this rail to get an unbroken chain that doesn’t have twists or kinks.

I got it to work by rotating the rail 90 degrees in the y axis. That put a pair of twists in the output but everything else was good. I rotated everything -90 degrees and ran the flow command a second time, so now I have two copies in the same place with twists in different locations. I deleted the twisted geometry from the first iteration and replaced it with good geometry from the second iteration and deleted the remaining geometry from the 2nd iteration.