algorithmic modeling for Rhino



Exoskeleton is a free plug-in for creating meshes. It is currently comprised of two components: Exo Wireframe and Cytoskeleton.

  • Exo Wireframe thickens line/node into watertight meshes. It solves the nodes using a convex hull and stitches the hulls together with polygonal struts.
  • Cytoskeleton thickens the edge network of any existing mesh into a thickened mesh. The topology of the base mesh enables the production of a clean quad meshes whose vertices are all of even valence. Because It uses the half-edge mesh library developed by Daniel Piker and Will Pearson, it also requires the installation of the Plankton dll's and gha.

Exoskeleton remains a work in progress, and as bugs are fixed and new components and features introduced, updates will be placed here. Furthermore, Exoskeleton is an open-source library.

Download the most recent version here:

This has been updated to also include Plankton version 0.3.4

This library is distributed under the terms of the GNU Lesser General Public License (LGPL).

(The source is available on GitHub here)

Please use this discussion forum to post questions, describe issues, and provide feedback (and examples!).

Copyright 2014 Daniel Piker and David Stasiuk

Thanks to Will Pearson, for his work on Plankton and who also has given some invaluable contributions to Exoskeleton in terms of project organisation. Thanks also to Giulio Piacentino for Weaverbird, and for general knowledge and support, and Mateusz Zwierzycki for the same, as well as for sharing his code for convex hulls, which although not used explicitly here, was very helpful in many regards for the development of Exoskeleton.

Members: 323
Latest Activity: on Saturday

Discussion Forum

dividing nodes

Hi,i was wondering if anyone knows a script or has an idea of how to divide a node to enable the fabrication of branching structure.anything would be immensely helpful. I've done what i want to…Continue

Started by George Brazier Mar 29.

Exoskeleton trial - Error 2 Replies

Hello,I am making some first use of the Exo- Wireframe; I took a look to the Exo-vase exemple definition and tried to apply the same logic to a simple geometry, which is a sort of star derived from a…Continue

Tags: Error, Wireframe, Exo

Started by Giacomo Forcina. Last reply by Giacomo Forcina Jan 24.

Exowireframe failure 2 Replies

Hi all,Can anyone help? I'm creating some random lines with Voronoi 3D (cleaned up with Topologizer), and am getting "object reference not set to instance of object" with exowireframe. I've got 302…Continue

Started by David Bachman. Last reply by David Bachman Jan 3.

Cytoskeleton wont start up properly. 4 Replies

Hello folks,i've been trying to set up exoskeleton and cytoskeleton, but only exoskeleton seems to be working. When I start GH, it gives me 2 Errors: 1. (Cytoskeleton level 1) Target invocation…Continue

Started by Nicolai Bauchrowitz. Last reply by Daniel Piker Sep 6, 2016.

Comment Wall


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

Comment by David Stasiuk on January 6, 2017 at 2:29pm

I haven't tested it in GH 1.0 or Rhino WIP...

Comment by Mauro Sogni on January 4, 2017 at 7:33am

hey guys do you have problems in GH 1.0 in Rhino WIP?

in GH1.0 Exowireframe fails but in GH0.9 RH5 it is ok.

do you have the same issue?

Comment by Kelvin Karel on October 16, 2016 at 1:15am

Hey guys,

Is there a way to vary the sizes of the nodes?

What i meant is the bottom stick is bigger while the 2 sticks that splits are smaller. 


Kelvin Karel

Comment by David Stasiuk on April 18, 2016 at 9:29am

It's hard to know what's going on without seeing your file. I do know that the convex hull script isn't 100% bulletproof, and so will very occasionally bug out...

Comment by Doguscan Aladag on April 15, 2016 at 9:07am

Hey, first of all thank you so much for this very useful tool. I have a problem about the resulting mesh. Although I use topologizer and the curve network is totally clean, I still get this bad mesh as a result, no matter how simple the curve network is. Playing with the parameters didn't work so far (tolerence of the topologizer, pipe radius etc,.) Any ideas what might be causing this?

Thank you very much in advance.


Comment by David Stasiuk on March 28, 2016 at 10:59am

Have you tried cleaning up the network first with Daniel's Topologizer?

Comment by Nik Willmore on March 17, 2016 at 7:07am

I've run into a consistent bug in Exowire that makes it useless for most large arrays of connected wires, namely that some pairs are just "toxic" and won't work even though geometrically yes they should, and they can even be fixed to work by making a copy of them, sometimes:

The C source code is too complicated in multi-file format to run in a C# component, to see if the generic error "reference not set to instance of an object..." has a real error message to offer. Would I have to somehow recompile it and yet then how would I get a line number error code if I just recompile a plug-in? I have no idea. It's too bad it can't be just run as a C# script.

Comment by Daniel Piker on November 3, 2015 at 9:52am

Hi Carlos,

It's better if you make a separate post in the discussion forum above, as it makes the conversation easier to follow. The angle in cytoskeleton comes from the normals and face angles of the mesh. What effect do you want to achieve?

Comment by Carlos García on November 2, 2015 at 1:22pm

Hello all!

Im experimenting with weaverbird+cytoskeleton and I was wonder how I can control the angle that cytoskeleton made  

Comment by David Stasiuk on September 4, 2015 at 1:31am

Thanks for the head's up, Dafik! The file has been updated to reflect the current release of Plankton.


Members (323)



Search Grasshopper


  • Add Photos
  • View All

© 2017   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service