3D Model to 2D Surface Area Representation


I have been attempting to “flatten/unroll/unwrap” my 3D models with not much success. Essentially, I need a way to get a 2D representation of the exterior surface. Does anyone have any suggestions on how to accomplish such a task?

I tried unwrapsrf and smash, but neither of these have worked how I wanted.
I essentially want to do something like: https://youtu.be/mu8rpwqjCcM?t=881

But the closest I have gotten is:


I would guess the polysurface is causing it to split into different pieces, but converting to mesh didn’t let me use the unwrap command.

I do also have significant scripting experience because I come from a Computer Science background, but this would seemingly be a rather large task unless I could leverage some rs.Commands().

to use unrollsrf you need single curvature surfaces like straight cylinders, cones, etc. Having those piped corners will require some tricks to make them in several steps like:

I have a very large set of these to do this operation to which is why I am trying to come up with as simple/repeatable of a set of steps as possible. Here is an example file if that helps anyone. Is there actually not a simple way to do what I am asking?

Test.stp (572.8 KB)

UnrollSrf is the Rhino tool similar to the video you linked. Parts to be unrolled need to be designed to be “developable”.

Why did you upload a .stp file rather than a .3dm file?

No reason in particularly. Would a 3dm file be more useful to assist in finding a method?

Do you want to unroll the parts without distortion? If so then the parts must have developable shapes. That is due to how geometry works, not a software limitation. If the parts have developable shapes the UnrollSrf should work,

If distortion from flattening is okay then try Smash or Squish.

Is this what you’re after?

Test.3dm (150.4 KB)


This looks really interesting. Would you mind sharing your method? What operations/functions were used? Did you make this from the file I posted and if so what kind of modifications were necessary to the geometry?

First, you need to forget what you saw in the inventor vid (apart from one small detail that I’ll mention later).

If you want a developable/unfoldable surface, you can’t use a solid or surface with “thickness”.

And sesond, to UnrollSrf your model you’d have to remodel it using single face surfaces as the outside most face of your pipes/ducts to create “clean” geometry. The elbows would have to be like Diego mentioned if you want those, otherwise you can’t get a proper flat pattern for those. You’ll also need to make sure you have a seam on cylindrical and conical parts so Rhino knows which edges to unroll as edges (just like there was one in your inventor vid).

I assume you know the radii and lengths of your pipe/duct work. The easiest way would be to model them using those numbers rather than doctor your existing polysurfaces. Remember, for proper unfolding you need to have “clean”/well defined geometry.

1 Like