Unwrap and Flatten Faces Extension for SketchUp

Unwraps shapes and lays arbitrarily oriented faces flat on the ground.

Flattening a shell in segments

Description

flatten-icon-512This extension allows the user to do three things:

  • Unwraps non-coplanar faces (any shape objects, shells etc.) using an automatic (randomized) algorithm and then lays the resulting set of faces flat on the ground. This is done without creating any distortions.
  • Lays any arbitrarily-oriented face or collection of coplanar faces flat on the ground (without distortion). Use e.g. in combination with a manual unfold tool or to make sure faces are perfectly horizontal.
  • Projects a set of faces to one of the three main planes by smashing all faces flat. This creates distortions, of course.

This extension is useful for e.g. producing fabric or sheet-metal templates, laser-cutting templates, as CNC-prep, for texturing, etc.

Usage

Select one or more connected and ungrouped faces in your model and right-click on them to get the “Unwrap and Flatten Faces” context menu. If you select “Unwrap and Flatten”, then all selected faces will be unwrapped (unfolded/unrolled) and laid on the plane chosen in the settings. This happens without distortions becasue individual faces are folded to the same plane. If you select “Smash (project)”, then those faces will be smashed by projection onto the chosen plane (with distortions, of course).

The original geometry is preserved in this process and all resulting geometry is grouped, which makes manipulation easier. See the screenshots and video below for examples.

You can also find this tool in the “Tools” menu (which is where you can access its settings).

Some tips:

  • For some tips and tricks, read my article Unwrapping and unfolding correctly in SketchUp.
  • Only developable surfaces (e.g. a cylinder) can be cleanly unrolled. This means that if your object has double-curvature (as may be the case for a shell like the one shown in the first image in this post), then this tool can fail because it may be impossible to find a result. Often, however (as in the case of a sphere), this tool will basically “peel” the surface, which may or may not be a useful result.
  • In some cases it is necessary to turn hidden geometry view on (View > Hidden Geometry) before you select any faces.
  • The unwrapping algorithm doesn’t always work automatically. It basically starts at a random face and tries to line up all of the selected faces in a logical pattern (a “string” of faces if you will). If this doesn’t succeed, then it tries a set number of times to get this right. If it still doesn’t work (you get an error or the results don’t look right), re-try with fewer faces in your selection and stitch them manually. Each run is random, so results can vary between tries.
  • The result may have overlapping faces. This happens when the unfolding process folds one face on top of another. In that case, SketchUp will merge those faces. The result may still be usable, but you will likely have to separate the faces by copying and editing. A better approach is to select fewer faces and unwrap the object in segments.
  • To speed up working with this extension, set a keyboard shortcut under SketchUp’s preferences. You can also turn off confirmation dialogs under the settings (see below).
  • You can adjust the settings to your liking (under Tools > Unwrap and Flatten Faces > Settings):
    • Choose the plane onto which the shape will be flattened (ground plane is default).
    • Turn colorizing on to give each unwrapped segment (from selection) a different color (random color assignment).  When this option is disabled (default), the face material is retained.
    • Set the number of iterations for the solution finding process (1000 are default).
    • You can hide the confirmation dialogs (shown by default). Only error dialogs will be shown if hiding is on.
    • You can show all step prompts (hidden by default). Be careful with this setting. It will give you a confirmation dialog after each face has been folded.

Screenshots and Videos

Downloads

You can now find this SketchUp extension in Trimble’s Extension Warehouse. For an easy install (and update notifications), browse to it from inside SketchUp (2013 or newer) and install it directly.

Alternative Downloads

Linked below are the installation files (RBZ and ZIP formats) for the current and some previous versions of this extension.

To install these files, follow the SketchUp folks’ instructions. You can also find this extension on GitHub.

Revision History

  • Version 2.4 (8/5/2017):
    – Added colorizing of unwrapped/smashed segments for reference
    – Toned down colors a bit (no white/black)
    – All confirmation dialogs can now be turned off (in settings)
    – Fixed face orientation for smashing
    – Fixed vertices bug for smashing
    – Fixed axis location of flattened shape
  • Version 2.3 (12/12/2016):
    – Fixed coplanar face bug
  • Version 2.2 (12/9/2016):
    – Fixed loader code
    – Code cleanup
    – Fixed problem with SU 2017
    – New settings dialog: show/hide dialogs, set iterations, target plane
    – Better unwrapping algorithm, handles larger items now
    – Original geometry is now always preserved (results in grouped copy)
    – New tool to smash (project) faces to axis plane
    – End statistics and feedback added to unwrapping tool
  • Version 2.1 (2/22/2015):
    – Added Tools menu item to remove confusion
    – Added statusbar feedback (important for larger models)
    – Added Help submenu item
    – Code cleanup
    – Fixed SU 8 bug with array.count
  • Version 2.0 (1/27/2015):
    – Added functionality to automatically unwrap non-coplanar faces first
  • Version 1.0 (2/12/2014):
    – First release

Links & Ads:

  • Dave

    Alex, this is an excellent extension and I’ve had great success using it to prepare cutting plans for an item I’m making from fabric that is largely comprised of cones and cylinders. For the most part, the random nature of the algorithm is fine. However, there are times when I wish I could control the location of the connecting seam. Is there any possibility of adding that ability? For example, where you could define a particular line as a definite seam? As a work-around, I have been introducing a narrow slot in the preferred seam location so that the algorithm recognizes the discontinuity along this line. Are you aware of a more elegant solution? Is there a way of tricking SketchUp in this way without actually introducing a slot? Take a cylinder for instance: a cylinder is an extruded circle. Instead of a circle, if the cross section was considered a 360 degree arch with coincident start and end points, then your algorithm would (presumably) begin and end its unwrapping at the line that coincides with the start/end of the circular arch. Any thoughts on this?

  • Luke Woolley

    This plugin used to carry notes with it, but now since it makes a copy the notes are left behind. Anyway to set it to still bring the notes along in the Flatten process? I don’t care if the original geometry is deleted, and since it seems these two changes are connected I guess I could just install the old version…

    • I see. Yes, that is because it just moved the original faces. So your process is to use text labels on the faces and then those remain attached so that you can find them after unfolding, right?

      • Luke Woolley

        Ooh cool, I’ll try that now! Thanks for the tip.

        That’s correct. Articulating wall panels laid out on the floor along with their labels. A “Delete/retain original geometry” option or something. While I’ve got your ear, a batch flatten that doesn’t try to unwrap (just independently operates on each shape selected) would also be helpful. Keep up the good work.

        • Hi Luke, I just uploaded 2.4. Try it out. Instead of labels, I added a colorizing option that should be even more useful, especially if one is flattening multiple faces at the same time. Also, for your batch process, you can turn off all notifications now and set a keyboard shortcut. That should be as fast as simply selecting the faces.

    • You can now download older versions of my extensions from the site. Try the last version for now, but I will be looking into your issue (use case).

  • Naddi

    Hello! I am using sketchup 2014 and I am getting the same error with “please undo and try again with fewer faces”. If I only select one face all it does is group that face and leave it in place. Any idea on what I might be doing wrong? Thank you!

    • The extension currently only supports 2015 and newer. Update SU and try again.

  • Rogier van den Brink

    i Get this:
    Problems with automatic unwrapping (used 1 attempts). Please undo and try again with fewer faces.

    Error: undefined method `definition’ for #

    What could be the problem?

  • B

    Hello, this doesn’t seem to work for me, even for the simplest forms, what do I do to make it work?

    • Which version of SketchUp and the extension are you using?

      • Aden Thie

        I’m having an issue with it as well. I run sketchup 2017. It says it is “unsigned”

        • That shouldn’t happen. Did you install it from the extension warehouse or from another source?

          • Aden Thie

            Straight from extension warehouse

          • Just updated to version 2.4. Does that work better now?

  • Gerry Santora

    Can this unfold a shelled shape and give you bacdk the angles to miterfold it back together? For example, I would like to unfold a shape so that I can cut it out of 3/4″ thick material, and then fold it up and glue it together to form a seamless shape that’s shelled at 3/4″ thickness.

    • It can unfold the shape as long as you do so in well-chosen segments. In that process, the angles are lost, however, once you reattach mating edges, those angles should be recreated.

  • guisasso

    Thank you sir!

  • Stas Teverovsky (Adrihal)
    • There is a possibility of creating overlapping faces in the result (as you got) with the new method. Best to unwrap the lower box and then the upper box separately. I could implement the old functionality (not grouping the result) as an option in the next version. Let me think about that.

      • Stas Teverovsky (Adrihal)

        The first version of the plugin was almost perfect!
        If possible, allow to specify the sequence that surfaces.
        And on surfaces indicate the name of each deployed plane
        On the scan it is advisable to see the name of the plane, so you can collect the product
        Checked or it works with color-

        2016-12-10 12:23 GMT+02:00 Stas Teverovsky :

        • I think I understand what you mean. This happens already if you select only some unrollable surfaces and then Flatten the object in sections.

      • Stas Teverovsky (Adrihal)

        The first version of the plug-in was almost perfect!
        If possible, allow to specify a sequence of deployable surfaces.
        And on the surface indicate the name of each deployable plane
        On the scan, it is desirable to see the name of the plane, so then it was possible to collect the product
        Checked or it works with color – it! But the best was to the name or number

        2016-12-10 12:24 GMT+02:00 Stas Teverovsky :

    • Gerry Santora

      Can this unfold a shelled shape and give you back the angles to miterfold it back together? For example, I would like to unfold a shape so that I can cut it out of 3/4″ thick flat material, and then fold it up and glue it together to form a seamless shape that’s shelled at 3/4″ thickness.

  • I just updated the Unwrap and Flatten extension to version 2.2. please update especially if you are on SU 2017.

  • SandBagSix

    SU 2016 is calling this an Unidentified Extension which I find it hard to believe since it came from the Extension Warehouse. It also said it needed access to the computer’s file system, am I missing something?

  • JasonR704

    Hello Alexander, I have downloaded your extension and tried to flatten out this curved design, but I’m having a very difficult time. I’d be happy to pay for your help!

    The use case for this design is that of a miniaturized hot air balloon. I will need to flatten this design and then cut a pattern which will be used to create many identical pieces of fabric that will then be sewn together.

    Very curious to know how to do this! Thank you in advance for any assistance you can lend.

    • In principle what you have here is a double-curved surface, which as such can’t be flattened without distortion. You can select vertical or horizontal “strips” of faces and then flatten those with my extension. That will give you cut patterns for fabric that you can stitch together. However, it assumes that you are not using flexible material that can actually stretch. Therefore such an approach is best when using sheet metal or heavy-material (e.g. if this were a full-size hot-air balloon. Because you are just making a smaller balloon, try flattening it in strips and then make an educated guess as to the outline that you are getting. when you cut that and stitch it back together, then you should be close enough.

      • JasonR704

        I’ll give that a try and see how it turns out. Thanks so much for responding back, really appreciate an expert willing to help us out!

  • Gennaro Langella

    Thank you very much!

    It helped me A LOT!

  • Thomas Asmuth (kidNeutrino)

    This looks very cool, thank you for sharing. I have 2015 Pro and it isn’t allowing me to select complex objects. Any suggestions? Did I miss a step?

    • Thomas Asmuth (kidNeutrino)

      Restart of the program got it working correctly. :) Thanks again.

  • ijpelaar

    I have tryed it for a horn flare, but it is 2,2244603 cm to short when flatten. I need two digid precision here. so 2,22 rest is not important.

    Maybe I do something wrong, do work fine for the rest,..

    regards

    • Can you upload an image in a comment that shows this? Not sure why it shouldn’t be exact.

      • ijpelaar

        I do put it on photobucket tonight. the lengt is in bend form 60,9 cm and flatten 58,7 cm I do also not now why, a other bend program did different, I can also send the sketchup design itself so you can test it.

  • Albert

    ad. previous comment was based on the 2013-version of Sketchup, now I updated Sketchup and the plugin works fine. Thank you for the plugin, I think it is very useful.

  • Albert

    On my computer it only works with one face. If I choose more than one face the plugin doesn’t do anything.

    • Thomas Asmuth (kidNeutrino)

      I have the same issue; could it be it isn’t playing nice with 2015?