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: 437
Latest Activity: yesterday

Discussion Forum

Thickness gradation

Hi, I'm pretty much a noob to Grasshopper and for product design project, i made this wireframe generator and I'm having hard time to manage the thickness of the exoskeleton:I want it ti be thick at…Continue

Started by RIPON anton Oct 28, 2021.

Exoskeleton meshes not joining??

Hi,I have just started using Grasshopper for university so please excuse my ignorance.I am trying to use Exoskeleton to thicken lines to use in an architectural rendering.  My first few attempts did…Continue

Started by Deanne Neilson Sep 10, 2018.

Can't get Cytoskeleton to load.

Rhino 6.I have Plankton v0.4.2 from (I also tried Plankton v0.3.0). Using…Continue

Started by Mike May 15, 2018.

Problem Using ExoW

Hey Guys,I am having a problem when joining two wireframes into one Exoskeleton Mesh. As you can see in the Pic#1 I was able to thicken the wireframe while having a problem after mirroring the…Continue

Started by Xiaojiao Xu Apr 16, 2018.

Comment Wall


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

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 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.

Comment by DAFIK SMAK on September 4, 2015 at 12:28am

Please releases component PlanktonGh.dll from 0.3.0 to 0.3.4 Thanks you

Please to update the current release because it's actually the  not correct DLL.

thanks very much

Comment by martyn hogg on June 7, 2015 at 8:05am

I got there eventually... the sl3dHull seems a bit buggy sometimes; I have to switch off parts of the model to get it to work.

Anyway, in theory I could make this, in practice I need to build a new CNC router first!

The overlapping mesh faces at the corners are just because the struts and nodes will interlock and the interlocking feature is not modeled

Comment by martyn hogg on May 28, 2015 at 12:14pm

Blimey, thank you! That would have taken me ages and will indeed take me ages just to understand it all and be able to re-create it but it is just what I was aiming for.

I always get stuck on managing data and notice you do some clever tricks with components like Propagate Ancester, PShift, Flip Last etc. which i really need to think about hard to understand and visualise what they are doing.

I like the smoothing end result. I'd not considered doing this but I will see if I can get some smoothing. The idea is to CNC the nodes from wood with a type of mortice and tenon joint and use approx 50mm x 50mm timber for the struts. I'd probably need to minimise the smoothing of the nodes where the struts will join but try and keep some smoothing in the centre of the nodes.

Thanks again!


Members (437)






  • Add Photos
  • View All

© 2022   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service