60 surfaces that Rhino should Unroll but it doesn't

Since I am working on a project with thousands of surfaces I managed to isolate some that don’t unroll. Most of those surfaces are made by extruding an arch in one direction and then Morphing.
Most of my surfaces get unrolled but those attached are an exception and I don’t understand why.

240529 surfaces that dont unroll.3dm (1.1 MB)

@Bogdan_Chipara How did you try to unroll the surfaces?

UnrollSrf command unrolled all of the 26 surfaces I tried. Version 8 SR8 (8.8.24142.13001, 2024-05-21)

Some of the surfaces unrolled with an area larger or small than the original. This is because the surfaces have double curvature and are not exactly developable.

Command line history:
Command: _Open
Name of the file to open ( UpdatePromptUpdateBlocks=Yes Browse ): “E:\Downloads E\240529 surfaces that dont unroll.3dm”
Successfully read file “E:\Downloads E\240529 surfaces that dont unroll.3dm”
Command: UnrollSrf
Select surface or polysurface to unroll ( Explode=Yes Labels=No KeepProperties=No RelativeTolerance=0.1 Warning )
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 1.5828 sq millimeters (0.01 % ) bigger after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.5869 sq millimeters (0.00 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.1847 sq millimeters (0.01 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.4140 sq millimeters (0.02 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 1.2920 sq millimeters (0.04 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 1.4083 sq millimeters (0.01 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 1.0957 sq millimeters (0.01 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 2.9473 sq millimeters (0.05 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.3849 sq millimeters (0.01 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.8862 sq millimeters (0.01 % ) bigger after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.2777 sq millimeters (0.00 % ) bigger after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.8525 sq millimeters (0.01 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.0665 sq millimeters (0.03 % ) bigger after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.2514 sq millimeters (0.01 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area is 0.2466 sq millimeters (0.01 % ) smaller after unrolling
Creating meshes… Press Esc to cancel
1 open surface added to selection.
Command: UnrollSrf
Calculating starting area… Press Esc to cancel
Select curves, text dots, and points on surface to unroll ( Explode=Yes Labels=No KeepProperties=No )
Calculating starting area… Press Esc to cancel
One surface unrolled.
Area difference is within tolerance.
Creating meshes… Press Esc to cancel
26 surfaces added to selection.

1 Like

@davidcockey

yes, it must be the Relative tolerance.
with RelativeTolerance=0.01 I get:

Command: UnrollSrf
Calculating starting area… Press Esc to cancel
At least one surface you are trying to unroll is not developable because it is doubly curved.
If you want to unroll it anyway, try using the Smash command or adjust the relative tolerance on the UnrollSrf commandline.
Unrolling doubly curved surfaces will produce inaccurate results.

If I increase to 0.1 it works.