Medeek Posted Friday at 06:22 AM Author Share Posted Friday at 06:22 AM I spent the better part of today trying to figure out ways to make the boolean subtraction more efficient. In the end my best solution was to create a square “cutter” in place of the actual (ornate) post which does significantly help. Now I just need to do a few more checks and throw the kitchen sink at this thing: Link to comment Share on other sites More sharing options...
Medeek Posted Friday at 11:31 PM Author Share Posted Friday at 11:31 PM **Tutorial 86**: Stair Railing https://youtu.be/TqZTTJ2kkYE Link to comment Share on other sites More sharing options...
Medeek Posted 18 hours ago Author Share Posted 18 hours ago I’ve been pondering how to control the truss layout of these complex roofs and after much thought and sleeping on the problem for a night I’ve come to the conclusion that for all but the simplest roof types (gable or half hip both ends on a rectangular footprint) there needs to be user specified girder trusses. Even the simplest hip roof (rectangular, hip both ends) needs two girder trusses. The algorithm should be smart enough to detect the layout in such a simple case but even so the setback of those girder trusses will have to be user controlled. With my existing hip set tools this is provided as a simple numeric value since the location and orientation of the hip girders is already determined. When you move to complex roofs the location of the girders becomes completely open ended. In other words we have too many degrees of freedom to confidently compute the solution. You can’t solve a multi-variable math problem if you have more variables than you have constraints or equations. That is the nature of this beast. My thinking is this: 1.) The user creates the perimeter or outline of the complex truss roof just as one currently does with the complex rafter module. The general roof shape and secondary features are generated (ie. sub-fascia, sheathing, cladding, gutter, soffit and fascia etc…), however the actual truss framing is not generated with this initial creation step. 2.) Next, the user clicks the girder truss creation tool which allows one to add in specific girder trusses between any two points within the roof outline (layer). The algorithm will require that the two endpoints of the new girder either terminate on the perimeter or along the length of an existing girder. Obviously the new girder cannot have both of its points on a perimeter edge or another girder, so that check will be built in. An HTML dialog box will allow the user to set a number of properties of the girder (ie. 2-ply, top chord depth, bottom chord depth, truss configuration, panel number for hip girders etc…) 3.) Once the girders are set then a context menu option will allow the user to attempt to generate the actual truss framing. If the girder layout is inconsistent, or illogical it will fail and display the applicable warning to the user. I’m still feeling this one out a bit so there may be an additional step where the user determines the rotation of the trusses in each zone created by the girder trusses. I think I can make this work but only time and some extensively testing will tell. I think the concept is fundamentally sound but as I’ve learned in the past with other programming problems, the devil is in the details Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now