The surface you are unrolling contains multi-knots, and the result of UnrollSrf is a polysurface… If you run RemoveMultiknots on the surface before unrolling the result of UnrollSrf should be a single surface. However be aware that RemoveMutiknotmay change the shape of the surface slightly. If the original surface was created using Sweep2, DevSrf, DevLoft or similar the surface after removing multi-knots may not exacty match the original input curves.
Surfaces with multi-knots are created when I use V6 and V7.
A mulit-span NURBS curve or surface without multi-knots has continuity between which is one degree less than rhw degree of the curve or surface. A degree 3 curve or surface without multi-knots has C2 continuity between spans. Knots are located between spans. If there is a multi-knot then the continuity at the multi-knot is reduced.
Notice that above i said C2 continuity, not G2 continuity. There is a difference. G2 continuity is curvature continuity. G continuity is geometric continuity and G2 continuity means the curvature is continuous. C continuity is more rigorous and means derivatives are continuous. C2 continuity means the second derivative is conitinuus. A C2 curve or surface is always G2 continuous but a G2 curve or surface may or may not be C2 continuous.
A curve or surface with mulit-knots will have reduced “C” continuity. The “G” continuity may or may not be reduced.
Why do commands such as Sweep2, DevSrf and DevLott sometimes produce surfaces with mulit-knots. The “simple” answer is because a single surface without multi-knots wihich exactly matches the input curves may not be mathematically possible because of differences in the parameterization of input curves…
I’m having a poke around to see if I can dig up any other differences between the V7 and v6 version of the same panel. Trying to spot other differences.
Looking carefully at the polylines for the V6 unrollsrf vs the V7 unrollsrf in the drawing above. They are within the same drawing … not superimposed.
Can also see some differences between the segments of the V7 bottom … it looks like the isolines have been set up equidistant within each section (bordered by the darker transverse lines breaking the panel into 5.
… whereas in the v6 generated flat panel the isolines are spaced more like what I would expect, something like a geometric progression with more concentrated curvature between the sections. I wonder if there is some curvature approximation (or averaging) going on in V7 which then forces the knots to happen.
Also a difference if I Explode the panels … remember these are both in the same V7 drawing now.
V7 splits into different segments.
V6 can’t be exploded. Stays in one piece.
The drawing was imported as a wireframe from a marine design program.
I isolated the curves I wanted and used the rebuildcrv non uniform to reduce the number of points down to 5. Then reflected and lofted between them to make a panel with fore and aft curvature only.
I’ve just reinstalled V6 and it works as it always did … unrollsrf creates a flat panel. Offset then creates a new curve along the whole panel edge.
In V7 - do the same thing, same commands on the same model that was created with V6 and the result is different as above.
If I create the unrolled surface in V6, save and open the saved model in V7 then offset works as per V6. But if another unrollsrf is done in V7 without changing the drawing at all … the problem above appears.
I created an example with a surface containing multi-knots which V6 unrolls as a single surface and V7 unrolls as a polysurface. So it looks like UnrollSrf was changed between V6 and V7.
The difference in behavior you are seeing with Offset is consistent with the difference between edge of a polysurface which is a polycurve and the edge of a single surface which is a single curve.
This is consistent with UnrollSrf in V6 producing a single surface and UnrollSrf in V7 producing a polysurface with both starting with the same surface with multi-knots.
Can I ask a follow up question … I’m relatively new to Rhino.
I read the documentation for unrollsrfUV. It states “develops surface while retaining UV”. I’ve looked that up before but haven’t found a satisfactory answer … what is the UV in this case?
Surfaces in Rhino (and other software using NURBS) have a parametric form and the parameters are usually referred to as u and v. Everypoint on a surface has a unique set of u,v values. Isocurves are curves with constant u or constant v values. When the UV structure is retained anly point on the unrolled surface will have the same u,v values as the corresponding point on the original surface. This can be important when flowing objects along a surface or when applying a decal or texture.
Several versions back, perhaps in V5, UnrollSrf was rewritten to be more accurate, and the UV structure of the unrolled surfaces was not guaranteed to match the original surface. So UnrollSrfUV was added which essentially is the old UnrollSrf.
I assume you are Michael Storer the boat designer. I doubt the difference in accuracy between UnrollSrf and UnrollSrfUV will be significant for your work. The discrepencies between the theoretical unrolled surface and how plywiod actually bends will probably be much larger.
Yes, I am the boat design storer. Correct that ply behaves quite differently from the mathematical model. I’ve actually built some mockups constrained by cross sections and the differences are pretty significant even in the small size I work with. However, without being constrained by sections located correctly in space the panels do work. A few degrees of freedom and it all works well enough with only small adjustments required with the first prototype.