Note that the strut cross section( 200x50) is NOT a rectangle! It has two 90degree angles only.
If each face triangle had been made from 200x50mm cross section and the face-to-face angle put on each side of the triangle… the inside faces of the triangle edge should be right angles and the outside corresponds to the face-to-face angle.
MESH_ANGLES_LENGTHS_CUTTING_LIST_INTDATA.gh (60.6 KB)
This is not using any solid boolean operation or surface/brep intersection, so the result is a mesh calculated almost realtime.
(If you need breps just replace the last big Merge with a “Twisted Box” and cast it to a brep parameter… but it’s way slower…
Note that “Twisted box” is actually really fast, it’s the brep parameter that is slow.
You could leave the mesh preview as i did, and bake/use the twisted box when needed)
For some reason the Plane Line Intersect component doesn’t work for me. I’m on R5 so had to add the multiplication back and got an error for the FaceB component but swapped these for R5 components.
Why do I care?.. Imagine I were to make this structure from 200mm x 50mm timber… I would make each triangle as per the mitre angles and then add an angle to each side of the triangle corresponding to half the face-to-face angle. That’s why I’d expect 90degrees on the inside of the triangles.
I started doing this on a small scale by just calculating the angles needed to cut the timber for 20x20mm timber and it seemed to work but I want to model it as it would be made.
That’s expected.
The mesh offset is not a real offset but it’s done by moving the vertexes of the mesh, the result will be truly correct only if the mesh is conical.
When 4 faces share a common vertex, the resulting offset usually would result in a complex shape, not again a simple vertex.
To understand what i’m saying try to convert it into a polysurface and make the offset on rhino.
You’ll get symmetric beams only with structures like regular solids and such…
So if I did actually make this by building the triangles and putting half the face-to-face angle on the edges then it would fit together but I would have a mismatch of the struts on the underside of the mesh where they meet at the nodes?