algorithmic modeling for Rhino

Introducing 'Exoskeleton' - A wireframe thickening tool

A collaborative effort by David Stasiuk and Daniel Piker, Exoskeleton brings simple wireframe thickening to Grasshopper. You input a network of lines, and it turns them into a solid

(without the heavy calculation of a Boolean intersection of many pipes and spheres).

The input line networks can have any topology, and need not form closed polygons or volumes, so could come from algorithms such as DLAleaf venation, or Woolly threads.

The resulting meshes are ideal for 3d printing and further processing, such as subdivision with WeaverBird and relaxation with Kangaroo.

There are settings for the thickness of the struts, node sizes, and whether to leave openings at nodes with only one connected line.

The approach we used is loosely based on the one described in the paper Solidifying Wireframes by Ergun Akleman et al.

Thanks to Giulio Piacentino for helpful discussion in the development of this idea, for WeaverBird, and the GHA wizard, to Mateusz Zwierzycki for convex-hull ideas, and Kristoffer Josefsson for helpful discussion.


(component will appear under the Mesh>Triangulation Tab)




Views: 46932


You need to be a member of Grasshopper to add comments!

Join Grasshopper

Comment by Silvio Carta on October 15, 2014 at 11:09am

any idea to solve patric guenther's issue? Same thing with me.

Comment by Ondrej Homa on August 6, 2014 at 7:37am

Dear Daniel and David,

I would like to ask, did You figured out the overlapping nodes issue allready?

Thanks in advance,


Comment by Jonathan Gann on February 11, 2014 at 10:44am

really impressed with this! thanks for sharing your work!

Comment by Marcus on February 3, 2014 at 9:31am

Are there files for the examples shown above??

Comment by Maximo Sanchez Granel on January 30, 2014 at 11:07am


First of all thanks a lot for your work!! Ive been struggling to print a diagrid on a building, and joining each pipe was giving me a hard time, as that wouldn't work.

When i enter all the curves into the script I get an overflow error.  Is there a way to get through it?  Joining lines maybe?

Thanks a lot for your time



Comment by Mihai Pruna on January 23, 2014 at 7:23am

Thanks David, I will give it a try in the future on more complex and three dimensional meshes.

Comment by David Stasiuk on January 23, 2014 at 7:11am

Hi Mihai-

With this release of exoskeleton there is an issue with lines that are located in the world if you have a 2D wireframe that is located in the XY plane, the mesh will look fine, but it will have several naked edges. This is an odd artifact, I think having to do with decimal places and translating between Point3d geometries and mesh vertices...but basically, if you want to make the mesh airtight, you just need to move your base wireframe network out of the World XY plane. Hope to fix this in a later release.

Comment by Mihai Pruna on January 23, 2014 at 6:59am

Excellent tool,from a visual standpoint.

 I've had issues with a model when trying to create a 3D printable object.

Basically, I had a 2D wireframe mesh  and used Exo on it, looked really good, but, once imported into Shapeways, most of the elements disappeared and I was left with a very "skeletal" model.

What I ended up doing was much simpler, I split the mesh into lines and then used the Pipe tool.

Comment by Ondrej Homa on November 30, 2013 at 6:30am


Thank You for sharing this awesome tool. Unfortunately, I can´t get good clean results. It computes strange exploded surfaces, which do not connect to each other. What am I doing wrong? I have tried a lot of values settings and still get somtehing like this:

Here is a definition and source file.

Thnx in advance for respond,

with respect,


Comment by BeckN on October 15, 2013 at 8:51am

I am very new to grasshopper and am trying to make these lines into meshes. Although I seem to only be getting triangles and the corners of the lines which is not what I want.

I don't know if Arthur Mamou-Mani or anybody else is able to help. Thank you. 


Search Grasshopper

© 2015   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service