Construct a Cantilever Shell using Kangaroo 2

Hi guys,

Does anyone know how to construct a cantilever shell with Kangaroo 2 (or just with Grasshopper components). The cantilever shell means that part of the shell structure projects outward from the suport points. The shell roof structure is an example of the cantilever shell, the projection of its tip lies far away from the foot supports.

I am a beginner of Kangaroo 2, and do not know how to control the boundary conditions for cantilever shell, does anyone know about it?

Thank you so much,

Hi @ryanhuangruiyang,

Could you maybe upload a diagram or sketch? Also what exactly do you plan to use Kangaroo for?


Thanks for your reply. I have uploaded the screenshot of a shell structure with four supports, I want to remove two diagonal supports, and obtain a shell structure with two diagonal tips freely hanged in the space. Can Kangaroo do this? I am not quite sure how to manipulate the two cantilever points.

Kind Regards,
Symmetricial Shell|690x269

The typical way of using Kangaroo for shell formfinding is to find a compression only shell by using tension and reversed gravity, like Gaudi and Isler’s hanging models.

Anything with a cantilever cannot possibly be a compression only structure.
For any compression only shell supported only on the ground, the entire shell must be within the convex hull of the supports when projected to the ground plane.

So the first step is to be clear about what you want to optimise for.

One possibility is to try and find a shape where the shell itself is all in compression, but there is a tension cable along the cantilever edge. I have made some experiments trying to use Kangaroo to find these. I can dig them out if that’s what you are after.

There are other possible targets though, such as trying to design a shell shape which acts as much as possible only through membrane action, minimising bending, but allowing tension.

Hi Daniel,

Thanks for your reply. Thank you for pointing out this! This is my thesis project and I am still learning how to operate the software. The optimization direction would be minimising bending moment in the shell surface, which is also the working philosophy of Kangaroo. Could you please show me your experiements on the tension cable? Maybe I can get some inspirations. I think at this stage, what I am aiming for is to achieve a cantilever shell strucutre, then run the model in structural analysis tools. If Kangaroo cannot achieve this, then what plugin do you recommend?

Kind Regards,

Hi Daniel,

I have created a script producing the cantilever shell through Kangaroo 2. My thought was applied a tension force vector connecting the two cantilever ends, this would stretch out the fabric.Cantilever Shell.3dm (132.8 KB) Square Shell (40.8 KB) Could you please have a look at it? I am wondering if it works with the Kangaroo 2 philosophy. Thank you for your reply again and look forward to your reply.

Kind Regards,

Hi Ryan,

With catenary form-finding, all the forces in the hanging model have to correspond to an equivalent opposing force in the inverted structure. The tension in the members becomes compression, the vertical loads across the surface of the shell are flipped, and the reactions at the base are also flipped.

If you introduce new forces pushing the tips of the shell out horizontally in the form-finding step, then the reverse of these forces needs to also come from something in the built structure - ie something pulling them back.
This could be as simple as a straight cable or cables spanning across the top of your shell attaching one side to the other, but you need to think about where these cables attach.

If the cables are not to be spanning straight across, but curved and wrapping around the boundary, or embedded in the shell surface, it gets a lot more complicated, because if you model their inverse in the form-finding - ie curved members which always try to expand, they simply buckle - unlike tension members which tend to straighten themselves out when pulled taut.

Hi Daniel,

Thank you for your kind reminds. It help me re-think about my strategy. I have decided to treat the cantilever shell as a tensile membrane structure, with two anchor points controlling the two cantilever tips. Please have a look at the attached rhino and gh files. My mission is generating the structure similar to the shell roof of Sydney Opera House. So I have to control the position of the ridge (shown in black arc at the top in rhino file).

My approach of achieving this is evenly selecting 9 points from the ridge, and vertically project them to the starting mesh. Then set these 9 points are set as anchor point, and drag them back to the original position in the ridge. However, the top edge now is not smooth, and may I ask if there is any technique for me to make the membrane adhere to the ridge? Like any tool to define “anchor curve” instead of discrete “anchor point”.

Many thanks,

Opera House.3dm (188.1 KB) Opera (30.6 KB)