Development and Updates for the Medeek Truss Plugin

Started by Medeek, November 07, 2015, 03:06:39 AM

Previous topic - Next topic

0 Members and 11 Guests are viewing this topic.


These errors are caused by the context menu and actually do not affect the plugin functionality.  I will put out a fix for these pesky little notices coming from the load files.

Nathaniel P. Wilkerson, P.E.


Version 2.2.4 - 11.02.2018
- Enabled wall sheathing, wall cladding, ceiling gypsum and roof cladding for monopitch trusses.
- Enabled gutters and downspouts for monopitch trusses.
- Enabled the "Edit Truss Assembly" function for all monopitch trusses (imperial and metric units).

I still need to add a few more advanced options to the monopitch truss type:

- Roof Returns
- Battens
- Soffit Cut
- Heel Blocking

I'm also thinking about adding an insulation option for the ceiling for trusses and rafter roofs so that the truss plugin is up to speed with the wall plugin.  Some additional feedback in this regard would be helpful.

With monopitch trusses there is also the issue where the exterior wall corner is created by the truss and hence I need to apply some corner trim on these corners.  I will give this some more thought.
Nathaniel P. Wilkerson, P.E.


Version 2.2.4b - 11.08.2018
- Licensee name now appears in the License tab of the Global Settings when plugin is registered.
- Removed all advertising banners from the global settings.

Even though this may appear to be a minor revision it is actually a critical fix/upgrade for users running on Mac and Windows 10.

The advertising banners would only load intermittently and hence would cause the HTML menus to not render (blank white browser window).  After giving this some more thought and deciding that the advertising revenue generated by the plugin was not a significant amount, and a less cluttered look is always more appealing, it just made more sense to remove all of it completely.

I've also updated the license tab to be up to date with the Wall plugin's license tab.

This same issue with the advertising banners in the global settings also plagues the Wall plugin.  I will be issuing a new revision for it in short order, that strips the advertising from the plugin.  I appreciate everyone's patience in this regard.
Nathaniel P. Wilkerson, P.E.


I've recently been thinking about the multi-pitch hip roof again.  Eventually I needed to return to this topic since the designer needs the flexibility of assigning different pitches to the various roof planes.

The same issues with multi-pitch hip truss sets applies to rafter roofs as well.

When you have a hip roof situation and the pitches are different on adjacent roof planes yet you want to maintain the same overhang and line up the fascia then the wall top plate must change.  However with trusses rather than change the top plate you simply have to raise the heel of the truss on the low side until it equals the height of the adjacent side.
Nathaniel P. Wilkerson, P.E.


Does anyone have any shop drawings of an asymmetric hip truss set they can send me.  Specifically I am looking for a hip truss set that has different pitches for front and back and then possibly a different pitch on the ends.  I have my theories on how such a truss set should be put together but it is worth the effort to study this a bit further and verify.
Nathaniel P. Wilkerson, P.E.


I used heel heights to fit facia lines and this was easy...  Just keep adjusting.  Hitting Update instantly moves geometry.


I think I have the asymmetric truss roof figured out but shop drawings from a manufacturer would be helpful in confirming my own conclusions.
Nathaniel P. Wilkerson, P.E.


Nathaniel P. Wilkerson, P.E.


Version 2.2.5 - 12.08.2018
- Added Trim 2 icon to the Medeek Tools toolbar.
- Added the trim 2 function for (solid) groups and components. This trim function allows the user to select two trimming planes.

This additional trim function will be helpful in trimming more complicated geometry like hip rafters and triangular pieces of roof sheathing or cladding.

Similar to the regular trim function this tool can also be utilized on any non-plugin geometry so long as it is a (solid) group or component.

View video here:

Nathaniel P. Wilkerson, P.E.


For some time now I've been wanting to create an extend tool. The most common utilization would be for extending rafters or studs to meet a wall or plate (face).

The problem I am seeing with this feature is how to determine which edges to extend. I can't really base it on axis orientation since studs are typically drawn along the Z-axis and joists and other elements such as rafters could be along an arbitrary axis.

I can't really base it on edge length either since you may be starting with a very short stud or block and the edges that you want to extend may be shorter than the end edges.

I don't know that there is an easy solution to this problem.

Just putting it out there to see if anyone has any ideas on this topological problem.
Nathaniel P. Wilkerson, P.E.


After giving this some more thought here is my proposed algorithm, feel free to find the holes in it:

1.) User selects the (end) face of the stud, joist, beam or rafter they want to extend.

2.) The user then selects the face (plane) they want to extend to.

(now the algorithm in the API)

3.) Find all of the vertices and edges belonging to selected face in step 1.

4.) Find each edge attached to the vertices in step 3 that is not belonging to the edges that make up the face.

5.) Check each edge found in step 4 by assigning a vector to one of them and then checking that each edge is parallel to this vector. If they are all parallel then proceed to step 6, if not abort.

6.) Check that the normal of the target face (step 2) is not perpendicular to the vector in step 5, if it is abort.

7.) Calculate the geometric line for each parallel edge (step 4). Then find the point (new vertex) for each line with the intersect_line_plane method and the plane (step 2).

8.) Calculate the distance between the new vertex (point) and the existing vertex (point), then move each vertex the calculated distance in the direction of the vector (step 5).
Nathaniel P. Wilkerson, P.E.


Version 2.2.5b - 12.10.2018
- Added the Extend function for (solid) groups and components. This function allows the user to extend a member to a single plane/face.

The tool also has the ability to handle fairly complex, prismatic beams etc...

A huge shout out to ThomThom and John (John_DrivenuptheWall) from the SketchUp forums for helping me sort some of the issues out with the algorithm and code. 

Tutorial 10:

Nathaniel P. Wilkerson, P.E.


Version 2.2.5c - 12.13.2018
- Added the Trim 3 icon to the Medeek Tools toolbar.
- Added the Trim 3 function for (solid) groups and components. This trim function allows the user to select three trimming planes.
- Enabled the ability to invert your selection within the Trim 2 and Trim 3 tools using the "CTRL" key in Windows.

Tutorial 11:

Note that the planes in either advanced trim tool do not need to be orthogonal.

When using the Trim 3 tool the suggested order of selecting the cutting planes/faces is:

Vertical - Vertical - Horizontal

On an outside corner like that I'm not entirely sure how a skilled roof framer would cut that birdsmouth, but at least with the Trim 3 tool you have the option to cut it so it fits tight to the wall as I've shown in the video.

I like including this toolset as part of the Truss plugin, but I am also wondering if there might be a potential market for it as a stand alone plugin ($5 - $10).  As it stands currently the prospective user is forced to purchase the entire Truss Plugin if they want to use these tools.
Nathaniel P. Wilkerson, P.E.


In order to round out the selection of tools available and also per suggestion from a respected colleague it would seem prudent that I also include a mitering tool in the grab bag that is the Medeek Tools.

This can take shape in a few forms however the most important configuration in my opinion would be a tool that can take two solids and miter both of their ends at a common plane, while retaining the solid status of the group or component and retaining all of their properties and meta-data.

This would involve selecting the faces to extend/trim on each solid and then selecting two (non-parallel) edges that intersect at a point, so four pick points in total.  The intersecting edges need not be orthogonal (90 degrees) just so long as they intersect at a point, that is enough to define the mitering plane.

I haven't searched very much yet to see if such a tool/plugin already exists and I don't really want to recreate the wheel on this one.  Please let me know if you are aware of such a tool, that can work for any (non-plugin specific) solids.

Would there be a need/demand for this proposed tool?
Nathaniel P. Wilkerson, P.E.


Version 2.2.6 - 12.16.2018
- Added the Miter Cut icon to the Medeek Tools toolbar.
- Added the Miter Cut function for (solid) groups and components.
- Enabled temporary (construction) dimensions for trusses, roofs and floor assemblies.
- Added a section in the General tab of the global settings for configuring construction dimensions.

Tutorial 12 - Miter Cut: 

Nathaniel P. Wilkerson, P.E.