Unfolding with Compound Transforms

2013 update: this is probably a better way to go.

Unroll%20Brep.gh

------------------------------------

Cross posted here.

 

UPDATED TO WORK WITH VERSION 0.8.0010

 

Lately, in some of my work I have been investigating unfolding complex forms with Grasshopper. The newest release of Grasshopper enables the use of Compound Transformations, which makes it possible to quite efficiently unfold strips of planar surfaces. In the past I have had to use pepakura or other similar utilities to perform the unfolding outside of Rhino, or alternately a slow faux-recursive method where I essentially unfold one segment of the polysurface at a time.  
Below are a few definitions making use of this new capability.

The first, here (unfold_surface_strips.ghx), simply takes a list of surfaces that adjoin each other at an edge and unfolds them flat.


The second (triangulated_surface_strip_tool.ghx) utilizes the same processes in the first to unfold a triangulated version of an input surface. Strips can be evaluated in the U or V direction.



Finally, with the right settings on the same definition (setting V divisions to 1 and U divisions to some high number) it can be used to substitute for the UnrollSrf command in Rhino with a high degree of accuracy. This is an improvement in efficiency and accuracy over my earlier Unroll definition.

Load Previous Comments
  • Michiel Spaapen

    Hi Andrew,

    I am trying to unroll rectangular strips. Your unfold surface strips script however doesn't flatten my strip and the unroll brep script overlays some surfaces. Do you have any idea why this is?

  • Merve Akdoğan

    undefinedHi Andrew,

    Thank you for your post, but unfortunately I could not unfold my triangulate surfaces with your code and actually ı do not know what the problem is. I have very limited time for production process of my design. I hope you can help me. I am attaching Rhino file of my triangulated surface and a screenshot of it.

    Thank you in advance,

    merve

  • Lee Yi Chin

    hello Andrew,

    I tried with the unrollBrep.gh script you shared, and I have some problem with that function. How the "curve" and "points" inputs work in this function? I supposed that is the curves or points we want to cut through when unrolling the surface. However, It didn't change anything while I inputed the curve to the function.
    Can you explain more about the the unrollBrep script?

    Thank you so much!

    Ruby