algorithmic modeling for Rhino



I'm looking for some guidance on modelling a tensile fabric roof. It will be quite a complex roof. I've looked at RhinoMembrane but it's a bit too pricey.


I've searched all over the forums and Google and found a few other similar questions. I've also checked the official pages for GeometryGym and Kangaroo but I think I'm looking in the wrong places as I can't find any detailed examples or videos that show the definitions.


Here's a example of the thing I want to acheive:


I created some simple NURBS base geometry in grasshopper from lofted circles.


I also divided the top and bottom circles into points which I want to use as constraints for my tensile fabric.


Here's a quick sketch of what I want to try and get to:


I'd appreciate it enormously if somebody can try and point me in the right direction or offer an updated definition. I imagine kangaroo would be the best bet for this, but I've no idea how to manipulate the components to make this happen.


I understand that Kangaroo doesn't necessarily produce actual minimal surfaces, but this is not a problem for me as it's just a conceptual design at the moment.


I've attached the Rhino file and Grasshopper definition.


Thanks for your time,



Views: 6591


Reply to This

Replies to This Discussion

I've had another go and got some pretty decent results. I thought I'd share it for other wanting the same result.


I needed to convert the BREP to a mesh and then use the closest point component to find the mesh vertices that are closest to the divide curve points for my anchor points.


I used a fairly high setting for the mesh, around 2000 faces. It was still a bit ragged but I put a meshsmooth on in 3ds max and rendered it out with a vrayEdgesTex so you can see the resulting mesh.





Nice example - thanks for sharing Matt.


Also - If you want to have more control over the boundary curves, I suggest maybe giving those edges different spring properties (stiffer, and non-zero rest length). I've attached an example of this.


And here it looks like the anchor points are evenly distributed around a circle, so easy enough to find, but for situations where the boundary is more complex, I've recently added to Kangaroo the possibility to constrain points to a curve but let them slide along it to find their most natural position.


Hey Daniel,


Thanks for the updated file. That is definitely an improvement. The top boundary was a little wild before, I wasn't sure about how to fix this though. I've not seen that naked edge component before, it's rather 'nifty'.


I'll post the actual roof canopy when I've modelled it. Do you have any examples of the curve constrained points, as you mentioned?


Thanks a lot,



Hi Matt,


I've been trying to find time to demonstrate this type of membrane form finding having just seen some nice canopies and shelters in Australia, thanks for the prompt and sample problem.



The attached definition is a little more complicated than I'd like, but it's producing some reasonable results (and the bulk should be able to reused for different arrangements).  As Daniel stated, control of an edge stiffness member will influence the degree of retraction, in the GSA solver this can be controlled by altering the target soap stress properties for the 1D and 2D elements.  You will need the latest plugin for GSA as I added some new components to do this,


Hope you also find it useful, don't hesitate to let me know any questions or suggestions.






Hi, Matt

It seems the site you're looking for

The new version of K3-Tent system has been laid-open on the page so previous installation should be substituted for the newer one.






  • Add Photos
  • View All

© 2019   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service