It's just Flow function but alas that works not good with complete cylinder!
In my example that is not a complete cylinder so works fine!
Use : Copy Past in place the top external arc Cylinder (will be the Base curve)
Look at Detail (up page right for have the length of this arc (will be the target line - the same than the script Unwrap Curve )
Draw a line of this length : the Target line
Select the object Cylinder with the window
Call the Flow function
Click the arc Circle (pasted) as start curve
Click the target line drawn
Et voilĂ you have your unfolded object! ;)
The line is a single entity folding over on itself with no segments. There is no "separation.
I am not sure how to arrange to Unfold that particular shape. For me it is starting to get into the non developable arena and want to go to software meant to do that.
Maybe Michael can direct unrolling that cylinder?
Here is a video where I use Pepakura to unfold it. But you are now "dicing up your model". So you will have to make a determination on tolerances and accuracy
It looks like using a closed curve for the base curve is problematic because a point that maps onto the seam point of the base curve is equally close to 2 locations on the unwrapped line.
I think you can solve this by splitting it in half and processing each half separately:
Oh and for that line above, the #3 - you don't actually need to make it the line the exact same length as the arc as long as you don't enable the "Stretch" mode in the flow options.
When Stretch is off it will match "distance traveled along base curve" to the same distance traveled along the target curve, automatically extending if needed.
When Stretch is on it will match "percentage traveled along base curve" to the same percentage traveled along the target curve.
Looks like it can do also NURBS unfolded as NURBS when there are developable surfaces. So that might work ok (in pro version) for sheet metal models too. For polygon mesh objects it does Pepakura Designer type stuff with making tabs.