3D Truss Models
-
Version 2.5.9 - 10.26.2019
- Added a trim fascia rake parameter for complex roofs.
- Resolved the issue with the soffit for the "gable" soffit configuration for complex roofs.
Note that the trimming of the fascia rake is enabled automatically when you choose the "boxed" soffit configuration. The "gable" configuration however allows one to trim the ends or leave them untrimmed.
For low roof pitches the "gable" soffit extends to the corners, at steeper roof pitches the logic checks the geometry and creates the flat section as required.
-
First look at the "Terminal" roof plane configuration:
3D Warehouse
3D Warehouse is a website of searchable, pre-made 3D models that works seamlessly with SketchUp.
(3dwarehouse.sketchup.com)
The terminal configuration is utilized when you have a roof plane that abuts a vertical wall as shown. To use this feature the corner angles of the roof plane must be both 90 degrees (same as a dutch gable or half hip).
The next feature I will be working on is a roof "connection", or the ability to create secondary/primary roofs, where one roof ties into another roof assembly or solid group or component. This feature should prove a bit challenging but very useful if I am able to make it work as I have envisioned it.
-
First look at the "Roof Connection" feature:
In this case I am simply connecting to a generic solid which cuts away the section of the roof that is intersecting the solid geometry. When I get to the actual roof framing things may become slightly more complicated (ie. ledgers etc...)
View model here:
3D Warehouse
3D Warehouse is a website of searchable, pre-made 3D models that works seamlessly with SketchUp.
(3dwarehouse.sketchup.com)
When a roof is connected to another roof not only will the secondary roof have geometry removed but the primary roof will also need to have geometry modified or removed. This is a real can of worms, but hopefully I can bring order to the ensuing chaos.
-
Here would be an example of a chimney against the eave of a roof:
Note the addition of a cricket (manually created group) next to the chimney.
-
First look at two intersecting complex roof assemblies:
View model here:
As I've worked my way through the logic of intersecting roof assemblies this evening it has become clear to me that the concept of primary and secondary roofs really does not exist. In actuality intersecting roofs is the more correct terminology. If a roof assembly intersects another roof assembly, each will need to have its geometry modified by the presence of the other assembly's roof primitive. Each assembly will store the other assembly's name in its attribute library (database) as a connecting object.
The tricky part of this will be the rafter framing, where a simple boolean subtraction of the opposing roof primitive from the rafters will not work. I will need to ponder on this some more, I think the solution will probably reveal itself but currently I don't see a clear path on this one.
-
Version 2.6.0 - 10.30.2019
- Added the terminal roof plane option for complex roofs.
- Added the "Complex Roof Connection" tool to the complex roof toolbar.
- Enabled Roof Connections for complex roofs: roof assemblies or solid groups.
- Added the "Remove Roof Connection" feature to the edit menu for complex roofs.
Tomorrow I will put out a tutorial video explaining the terminal roof plane option and the setting up and dismantling of roof/roof and roof/solid connections.
-
Now that I’ve got the roof connection functionality up and running it is time to turn my attention to the actual roof framing. This is where the real headaches begin.
I think I will start with trying to figure out an efficient algorithm for the ridge boards.
Most orthogonal roofs are fairly straight forward:
If a ridge meets another ridge then it will receive a miter cut to match with that other ridge.
If the ridge terminates into two hip rafters then it will be a square cut.
The question I have is what to do when the hip terminates into a flying hip and valley?
Then of course there are the exceptions caused by half hips, dutch gables, gables and terminals but those can be accounted for.
As I’ve previously stated it makes sense to first catolog each edge of the roof primitive and create a hash for easy lookups. The process of elimination should allow me to assemble the catalog relatively easily.
-
The new connection tool allows you to do this sort of thing:
-
Tutorial 17: Complex Roof Connections (19:05 min.)
View model in tutorial here:
https://3dwarehouse.sketchup.com/model/409737e8-7a33-40ba-9cd3-4ced14ce5e0d/Tutorial-17
-
The Medeek Halloween Haunted House:
View model here:
https://3dwarehouse.sketchup.com/model/bfbc1532-b2ed-488b-9847-16b13ce79618/Medeek-Haunted-House
Another test of the roof connection feature with chimney and turrets.
-
First look at ridge boards with complex roofs:
Things get a little messy when a ridge terminates into more than two hips or flying hips (ie. octagon and hexogon roofs), I will need to add in additional logic to handle these types of situation.
The potential asymmetry of the roof planes also creates some interesting possibilities, however I do think I've solved that topological problem.
-
Version 2.6.1 - 11.07.2019
- Added ridge boards for complex roofs.
The next framing item is hip and valley rafters.
-
First look at interior half hips:
-
Version 2.6.2 - 11.17.2019
- Allowed the option for interior half hips within complex roofs.
The logic for interior half hips proved to be rather complicated. This additional feature affected every aspect of the module so it took me about 7 days to make it happen. However, in the process I think I also made the module more robust and addressed some other minor issues. Eventually I will also need to enable interior dutch gables but right now I'm too exhausted mentally to attempt it. Currently only gables and half hips are able to pile up on each other as shown.
Also note that you can mix things up with interior gables and half hips. For instance you could have a half hip on gable on half hip or any other combination.
Now, let's see if I can make anymore head way on valleys, hips and rafters...
-
Version 2.6.3 - 12.02.2019
- Fixed multiple bugs in the complex roof module as related to metric templates.
After a bit of a Thanksgiving break I'm back on the complex roof module. There is still a considerable amount of work to do with the framing of the roof, some of the details I am still sorting out, in particular a very efficient rafter framing algorithm. I'm hoping to wrap this all up in the next couple of weeks and then jump over to the new Medeek Floor extension which will replace the floor truss/I-Joist module of the Truss plugin.
The new floor extension will allow for complex floors with the ability to alter the outline of floor similar to the complex roof.
-
I always get a lot of questions about what features are available within the truss plugin.
Many of these questions can be answered with a quick search of the changelog:
Medeek Design Inc. - Medeek Truss Plugin Changelog
Medeek Design Inc. - Medeek Truss Plugin Changelog
(design.medeek.com)
Just a reminder that the changelog lists every new feature, modification or correction to the plugin since its inception (Oct. 2015 - Present).
-
First look at ridge caps for a complex roof:
There is still quite a bit of work to do on this feature/module, but at least I have a game plan in place now and I think I can make it happen.
-
Version 2.6.4 - 12.16.2019
- Exposed the roof soffit layer name in Layers tab of the global settings.
- Fixed multiple bugs in the gambrel attic truss module.
If you are using gambrel attic trusses this is a critical update/fix. This addresses the following two bugs:
- Error when metal plates was turned off in the global settings.
- Non-initialization of the roof cladding material name.
-
Version 2.6.5 - 12.18.2019
- Enabled an "orthogonal mode" for the complex roof draw menu.
- Added the ability to delete points in the complex roof draw menu.
Clicking the "Ctrl" key will enforce orthogonal mode while using the draw tool. Currently the orthogonal mode will restrict the user to 45 deg. increments.
While selecting the points for a roof outline the user may accidentally select an incorrect point. By clicking the left arrow key the user can delete the previously selected point (or multiple points). I will probably also incorporate this same feature within the draw menus of the foundation and upcoming floor plugin.
Both of these improvements are a result of plugin usability discussions with Larry Belk.
-
As we begin a new decade the number of licensed users of the Truss plugin is currently at 1,200. The plugin is now just over 4 years old, it will be interesting to see what we can do with it and the other plugins of the mdkBIM suite in this coming year.
I am looking forward to completing the complex roof module as well as bringing the truss side of the house up to par with the rafter side within this module.
Beyond that, it is the new floor plugin and project plugin as well as completing some key items with the wall plugin.
Wishing everyone a happy and prosperous New Year.
Advertisement