algorithmic modeling for Rhino


I designed the shape of the roof (1,2), which I want to show using the waffle structure(3). I'm at a point in which I would like to decomposed all beams to printing but I have a problem as in the picture (4).

Previously, I had a problem with generating intersections between the two directions of the beams, but a colleague helped me by extending beams, so there was no problem with lines of intersection. But this solution has generated curl (5) at the highest vertex geometry, which I ignored in order to repair it before printing, perhaps this mean my problem with my beam spread properly. Only when the beams is 19, does not jump no problem, but I still can not distribute them properly.






I tried to show as simply as possible by removing or signing my code in GHX file.

Thank you in advance for your help

Views: 2500


Replies to This Discussion

I disabled most of your code related to extending the beams and modified a bit of wiring here and there...  Seems to work fine except for two exceptions at the extreme corners, bottom foreground in the pic below - but these are quite minor and can probably be fixed some other way?


Thank you for your response.
Your cleaning helped me look at the whole from the beginning and even I deleted a little more.

Waffle structure will support structure and the shape of the sharp areas would show through additional side profiles(the image on the left).

What is interesting, as I Shrunk the height of the beams to 5mm and it increased their amount without error up to 27 pieces. And as I switched on the negative so that my beams have -10mm over the current area, any errors do not show. I do not understand why this happens, but I suspect that this is due to the geometry.

Still remained the problem with beams of how to properly them spread out on the plane...

Well, this is quick and dirty, has some mysteries, but might get your wheels turning in a different direction?


So much to learn from mysteries!  Good CNC nesting would improve on this, but at least they're all oriented properly and not overlapping.  Had to rotate half the beams to avoid overlap.


Wow !

Now I can try to add cuts and description of each element

I would like to thank you for your help.

I still have trouble with holes for joining. I'll sleep a little and I will try to solve it, as I get up.

I am adding actual file if someone would like to help.


I went a little crazy with this...  Decided that better control over the beam angles was needed - in fact, bisecting the two acute angles seemed like a good choice.

One thing led to another...  I noticed that the beam ends and offset roof (+ or -) were at odd angles.  I tried making the beams from intersections with the offset roof.  I replaced 'Offset' with 'Move', keeping the top and bottom surfaces the same.  (This looks good!?)

I replaced 'Ruled Surface (RuleSrf)' with 'Edge Surface (EdgeSrf)'.  Have much better direct control of "span", the distance between the beams.  Moved the main controls, including roof offset, to the top left of the canvas.  Rebuilt the surrounding edge surface using the edges of the two roofs.

Will you have a hole in the middle to drain the water that collects?


Here is one more version that is significantly better in two respects:

  1. fine adjustment of beam crossing angles.
  2. beam thickness, centered.

Splitting the angle between the tangents wasn't quite what I wanted so I made two knob adjustments for those angles.  Then I noticed when I was "roughly happy" with the angles, I could very carefully adjust each one so that a beam would be centered in opposite corners of the roof - all four corners.

Keeping the beams centered while adding thickness meant moving the surface halfway first, then extruding it the opposite way.  They are depicted as 2X10s (1.5 X 9.5).  Laying the beams out flat (nesting) required 'DeBrep' to get planar faces for 'Orient' and 'Rotate'.

It's nice to see all the details so clearly before building something, eh?


I spent a little more time on this to get four vertical lines at each of the beam intersections - in yellow:

Then spent a LOT of time trying and failing to translate those lines to the flat, "nested" layout, along with each beam.  At minimum, these would be useful for cutting notches by hand.  Or they could be the basis for a pair of interlocking parametric notches, cut into the beams before they are nested...

Any idea how you're going to build this thing?

I like roofs designed to collect water but having a small lake pool up due to a clogged drain could be very bad!

Maybe more effective, and stronger, if inverted so the beams are in compression instead of tension.


I do not know how to thank you enough for so much work, I had the previous two days a lot of work on another task, so today I can calmly analyze about what you did.

About shape:

The highest vertex is the result of urban planning and a desire to hide the chimney, so I can not turn its entirely.

The entire roof structure is planned to be set on two pillars at the vertices and the frame at the shortest edge of the roof. Regarding the same roof structures, I want to first make a model of balsa wood in scale, to see if the cavity is sufficient to put the light coming from the sides might have to bounce back from the concave roof. If it will be enough I'll analyze what material to complete the construction will be the best, what comes first is wood, but also can be a steel, both also are suitable for implementation of the trusses, which gave to a similar shape as the beam. Helpful will be here the Autodesk Robot or Karamba.

When it comes to drainage, I have to change the shape of any of the edges, or change the upper plane of the roof, so that the bottom and top will be different and will not be the result of moves or offset, only new shape.

Now I have to figure out how to add cuts to the beams so that they can be folded together in the model.

My pleasure, I learned a lot in the process.  And got some key help along the way.

Attached code adds the vertical intersection lines to the flat "nested" layout; they are intended as guides for cutting interlocking slots on the beams - though I don't know if that's the best way to build something like this?  The slots facing down, on the bottom of the beams, will tend to open due to tension and need to be strapped somehow.  I would think some kind of composite layout process might work better than slots, perhaps interleaving alternate layers of the "beams".  Have fun!


I thought I was done with this one for awhile but had a couple "simple" ideas for cutting interlocking slots where these beams cross each other - one of them worked!  Still not sure it's a good mechanical solution due to the stress on these beams, but that's a different issue...






© 2022   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service