Wall Plugin for SketchUp

Started by Medeek, March 05, 2017, 12:03:48 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Medeek

Started to put the Wall Plugin together in earnest today.  A lot of competing interests so I'm still not sure on the date of first release yet, but at least I'm putting something together now.



For the Imperial Version the First and Second Menu Items (Ext. Wall Type) are currently:

First Menu:

1.)  Wall Mode:  Line, Polyline
2.)  Wall Type:  Exterior, Interior
3.)  Wall Justification:  Front, Center, Back
4.)  Wall Height (in.):  97
5.)  Wall Header Height (in.):  80
6.)  Stud Size:  2x2, 2x4, 2x6, 2x8, 2x10, 2x12
7.)  Stud Spacing (in.):  12,16,19.2,24,32,48
8.)  Stud Direction: Left, Right
9.)  Corner Offset (in.): 0
10.)  Top Plate:  1,2,3
11.)  Top Plate Thickness (in.): 1.5
12.)  Bottom Plate:  1,2,3
13.)  Bottom Plate Thickness (in.): 1.5
14.)  Adv. Wall Options: YES,NO


Second Menu (Adv. Wall Options):

1.)  Wall Sheathing: YES,NO
2.)  Sheathing Thickness:  3/8,7/16,15/32,1/2,19/32,5/8,23/32,3/4
3.)  Wall Cladding:  YES,NO
4.)  Cladding Thickness:  3/8,7/16,15/32,1/2,19/32,5/8,23/32,3/4
5.)  Wall Gypsum:  YES,NO
6.)  Gypsum Thickness:  1/4,3/8,1/2,5/8

I will start with the (single wall) line mode first and then progress to the polyline once I have the basic system working.  Then the addition of doors and windows and advanced options which will automatically insert doors and windows into the openings.

I've been thinking about brick facade and I'm not entirely sure how I'm going to incorporate this into the plugin yet.  Typical air gap is 1":



A 5.5" thick stud wall with 1/2" sheathing and a 1" air gap with 3.5" thick brick fits on a 10" stemwall with a 1/2" overhang of the brick.  Does anyone have any wall details/sections that they would like to see implemented in the plugin?

Here is the same wall but with a 4" x 6" brick ledge:



Notice the APA detail the brick ledge does not project below the structural sheathing, this probably makes more sense since you probably don't want the butt end of the sheathing sitting against the concrete and absorbing moisture, even though there usually will be a foam strip between the sill plate and the concrete.



I've also seen details where the sheathing laps down over the brick ledge about a 1/2", this probably makes sense in helping to keep the bugs out but then it puts the sheathing into more direct contact with the concrete.  More discussion on this subject is warranted.  I've never actually had to provide a wall detail for brick since most of the construction locally is with hardi-plank siding so my experience with brick is theoretical at best.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Here is the same brick wall but with the sheathing lapping the brick ledge and the foam sill strip shown:

Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer


Medeek

Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

The initial toolbar:



I may add a couple more icons for editing and deleting openings (windows,doors).
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

This toolbar will be for light frame wood walls.  My plan is to have another toolbar (in gray steel blue color) very similar to this one for cold frame steel walls.  This will allow for the user to turn on and turn off which ever tools bars they need without having to clutter just one toolbar up with too many options that may or may not apply to that wall type.  Similarly a separate toolbar for CMU walls as I get to that. 

I'm sure there are other wall types that will come up but initially I plan on focusing on the standard wool wall and perfecting that as much as possible. 

Things will get complicated with the cladding options (ie. siding, brick facade, cultured stone, stucco and river rock) especially where they are partial wall heights and other interesting features like trim, corner treatments (Quoin), lintels, keystones and arched window and doorways.  Even the typical siding products like hardi-plank will have a number of cladding and trim options.

Here is a typical oval window that the plugin should be able to generate:



The there is the interior details (trim) of windows and doors that also should be provided by the plugin as an option:



Most houses I've lived in had only had the GWB surrounding the windows but at the minimum the doors usually has some form of casing or surround.  Integral to this is the baseboard and the optional crown molding and wainscoting.

Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer


Medeek

I've thought about using the Profile Builder method of pushing assembly along a path but unfortunately that only works well up to a point. When you start throwing complex openings into the mix things become much more complicated. This plugin may shape up to be even more challenging than the Truss Plugin, I guess will see how far I can take it.

As part of the door openings module there will also be interior vs. exterior as well as garage door openings. The framing aspect of the plugin should also be able to create portal frames with solid sawn and glulam headers.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Lightweight version of a Simpson Strong-Tie HDU8 Holdown.

View model here:

https://3dwarehouse.sketchup.com/model/ce77385b-5873-48b1-ba1a-a37c2ac58294/HDU8

Its about 1/10th the weight of the official holdown in the 3D Warehouse and 118 polygons vs. 3,109 polygons. 

I will plan on using these lightweight versions in the upcoming wall and structural plugin.

If you overlay the simplified version on top of the official version you will see how closely they match up.  The critical dimensions are primarily accounted for.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

I've slowly been formulating my plan of attack for this plugin.  Rather than jump right into it as I did with the truss plugin I've decided to take a step back and fully explore all the suggestions I have received.

I'm firmly convinced that I need to start with a 2D layout tool first that allows one to layout the floor plan (location of walls, door and windows) before I extrude/generate it into its final 3D shape.

One will be able to add, modify and delete doors and windows in each wall segment. 

Essentially each wall segment will have its own database associated with it that stores all of the wall properties as well as all of the opening properties.

I've been putting together the algorithms for the studs and for adding in openings.  Corner treatment is of importance to me and making sure that the studs are framed properly (as one would build it) is also of prime importance.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Each wall segment (Ext/Int wall) will have two ends or corners.  The possible configurations for the wall ends/corners will be:



The ability to easily switch from 1A to 1B or 2A to 2B should be integrated into the plugin, at least from a framing standpoint.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer


Medeek

My idea is to have a specific layer which the layout tool places all of its 2D layout geometry, something like the image shown below:



It will probably take a while to fine tune the layout tool so that it is robust and has enough flexibility to handle 99% of most wall framing situations.

View model here:

https://3dwarehouse.sketchup.com/model/2acdeae0-8358-47c5-9b9b-c45a3a0460ba/Wall-Plugin-Layout-Prototype

My idea is color code openings (windows, doors, garage doors) for easy identification.  The same holds true for wall types (Ext./Int., Int./Int.).  With the walls I am thinking about providing a 1 inch strip on the exterior and interior to indicate the "normal vector" of the wall and provide a visual representation for the sheathing and gypsum.

When using the door or window tool to insert a new opening if you key in a dimension it will place the opening that dimension from the start point of the wall (the wall segment currently hovering over), hopefully speeding up the process of adding openings.

I would also like to provide dimensions from the "start point" of the wall to any openings which update dynamically when the opening is moved by the user.

Inside each opening I would like to indicate the opening size and door or window type (ie. 4050XO, 2020PIC, 3068, etc...) but I don't see an easy way to insert simple text into the model.

Once you have the floor plan put together with the layout tool, you simply hit the "Generate" icon and the plugin will then automatically generate all of the walls (framing, openings, insulation, sheathing, siding, gypsum, baseboard and moulding) and optionally insert doors and windows into all of the openings. 

As the plugin matures, the plan is to provide more options for window and door options (mullions, wood vs. vinyl, dynamic components etc...) as well as increased options for wall cladding (siding, brick, cultured stone, stucco , wainscoting, pre-cast concrete accents, quoins, etc...)

Perhaps my vision is too ambitious?
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

I've been thinking about the First and Second Menu and here is my latest revision:

First Menu:

1.)  Wall Mode:  Line, Polyline
2.)  Wall Type:  Exterior, Interior
3.)  Wall Justification:  Front, Center, Back
4.)  Wall Height (in.):  97
5.)  Wall Header Height (in.):  80
6.)  Stud Size:  2x2, 2x3, 2x4, 2x6, 2x8, 2x10, 2x12, CUSTOM
7.)  Stud Spacing (in.):  12,16,19.2,24,32,48, CUSTOM
8.)  Stud Direction: Left, Right
9.)  Start Corner:  End, Outside Corner, Inset Outside Corner, Inside Corner, Inset Inside Corner
10.) End Corner:  End, Outside Corner, Inset Outside Corner, Inside Corner, Inset Inside Corner
11.)  Top Plate:  1,2,3
12.)  Top Plate Thickness (in.): 1.5
13.)  Bottom Plate:  1,2,3
14.)  Bottom Plate Thickness (in.): 1.5
15.)  Adv. Wall Options: YES,NO


Second Menu (Adv. Wall Options):

1.)  Wall Sheathing: YES,NO
2.)  Sheathing Thickness:  3/8,7/16,15/32,1/2,19/32,5/8,23/32,3/4
3.)  Wall Cladding:  YES,NO
4.)  Cladding Thickness:  3/8,7/16,15/32,1/2,19/32,5/8,23/32,3/4
5.)  Wall Gypsum:  YES,NO
6.)  Gypsum Thickness:  1/4,3/8,1/2,5/8
7.)  Wall Insulation: YES,NO
8.)  Insulation Type:  PINK FIBERGLASS, YELLOW FIBERGLASS, BLOWN FIBERGLASS, ROCKWOOL, CELLULOSE
9.)  Corner Framing:  California, 3 Stud, 2 Stud etc...
10.) Holdowns: YES.NO

Note that I have eliminated the Corner offset.  The amount of offset will be driven by the stud depth, however in the actual wall library (store parameters) I will include the offset for both start and end so that they can be edited independently.  Right from the get go I will set this up so that one can right click on the wall panel and instantly edit any of these settings as well as add or remove window and door openings.

I'm also going to add in a holdowns advanced option which will then trigger a sub-menu which will allow one to place holdowns at each end of the wall segment.

The holdowns sub-menu (subject to change) will include the following paramters:

HOLDOWNS MENU:

1.)  Holdown Type: DTT2Z, HDU2, HDU4, HDU5, STHD14, STHD14RJ, etc... (also straps ie. MSTC)
2.)  Holdown Vertical Offset (in.): 0 (this allows the ability to fine tune the placement)
3.)  Holdown Anchor Bolt: None, SB58-24, SB78-24, SB1-30, SSTB16, SSTB20, SSTB24, SSTB28, SSTB34, SSTB36, THD Rod, SB + THD Rod, SSTB + THD Rod  (this parameter will be applied only if holdown type requires an anchor bolt)
4.)  THD Rod Length (in.):  24  (this parameter applied only if an option with THD Rod is selected
5.)  Holdown Placement:  Start, End, Both
6.)  Holdown Strap Placement:  Framing, Sheathing

The anchor bolt options that include a threaded rod with the anchor bolt will also include the appropriate coupler nut based on the size of the anchor bolt chosen:  CNW58, CNW78, CNW1

Additionally the threaded rod diameter will be based on the holdown chosen.

As you can see there is going to be a considerable amount of logic that determines the sizing of these components.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Working in earnest on this plugin now.  I've also decided to create a system where walls can be grouped.  So that if you alter the height of one wall segment it will automatically adjust the height of the other wall segments within that group.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer


Medeek

The default layers for the plugin will be the following:

**WALL LAYERS:**
wall_frame
wall_sheath
wall_clad
wall_trim
wall_gypsum
wall_insul

**MISC LAYERS**
wall_hardware  (straps and holdowns)

If one want more granular control over the wall framing layers then the option will exist in the global settings to enable "advanced wall framing layers":

**ADV. WALL FRAMING LAYERS** (ON/OFF)
wall_header
wall_plate
wall_beam
wall_column
wall_king
wall_trimmer

I'm sure there will be other layers that will need to be added but these are the ones I've come up with for now.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Global settings:: Layer Tab:



The Kickstarter campaign has met its goal of $2,500.00.  I will be working on the wall plugin full time for the next month or two, until I have released the first public release of this new plugin. 

I would like to thank all who have pledged and supported the campaign and also those who may yet support the campaign. 

I am making solid progress on the Wall Plugin.  All of the framework is now in place and the backend progamming (shopping cart, database, icons, images etc...) is now also complete.

My ETA for the plugin is mid June but I think I will probably beat that self imposed deadline if I can keep at it full time like I have the last few days.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

The first menu for the rectangular wall tool:



I've modifed the wall type parameter to include the following (3) options:

Int-Int
Int-Ext
Ext-Ext

I am still thinking about how best to accommodate custom stud sizes.  I may make it possible to enter in custom sizes in the global settings so they can be permanently stored.  I prefer that the wall dialogues simply show a stud size rather than breaking it down into depth and width, but ultimately those two dimensions are what is being controlled here.

Working on the positioning tool portion, I will borrow from the timber truss module of the truss plugin to accelerate this coding task.  Also working on the advanced wall options and its menus etc...

Please let me know if you see something important that I am missing or if something can be made better.  I am always open to suggestion.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

In the global settings you can enable a 3D preview:



The 2D preview is default, which just shows the footprint of the wall.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

#18
Within the global settings and also when you edit a wall you will be able to modify the corner treatment at the start and end of each wall segment, the parameters being:

Corner Stud Qty: 1,2,3,4
Corner Stud Thk. (in.):  1.5 (default), can be user defined to any value
Corner Treatment:  California, None, etc...
Corner Angle (deg.):  90, can be user defined, 0 < x < 180
Corner Configuration:  End, Outside Corner etc...
Corner Offset (in.):  Stud Depth or numeric value (ie. 3.5, 5.5 7.25 etc...)

This will allow the user to utilize any combination of studs or timbers at each corner (ie. a 6x6 post) for a wall segment needing some serious shearwall action.

When you create a wall these three parameters will not be shown and will pass through from the global settings.  If a wall needs to be modified then a simple right click and "edit wall assembly" will allow for changing up these settings for either end of the wall segment independently.

If holdowns are enabled then the placement of the holdowns (ie. HDU series) will be modified appropriately to rest against the innermost corner stud surface.

In addition to framed openings (ie. windows and doors) there may also be other misc. items associated with a wall segment:

- Wall Columns
- Beam Pockets
- Additional holdowns/straps for shearwall segments within a given wall
- Additional framing where a wall meets another wall mid-length (T intersection).

I will give these items some more thought as the development progresses and determine the best way to add these items into the UI. 

As I imagined the complexity that can occur when framing a structure only gets more interesting the farther down the rabbit hole I go.

P.S. The numbers of parameters just grew from four to six, this now addresses non-orthogonal walls.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Global Settings:: Wall Corners:



Within this tab the user can set the defaults for the wall corners.

These same settings can also be set for each wall segment with the "edit wall" tool.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer


Medeek

I am now testing the stud placement and top and bottom plates:



So far only the line tool is available but seems to work fairly robustly now.

Please download and comment on the model below:

https://3dwarehouse.sketchup.com/model/a3100fa6-7f73-48be-9c52-92c903c5b29f/Framing-Test-1

There are a few minor issues that need further attention:

1.)  How to position studs with non-orthogonal walls, I could use some direction on this.
2.)  I have California Corners enabled for outside corner and inside corners, what do you do when there is a clash between the nailer and the regular stud layout, see model for examples.
3.)  When there is more than one top plate (2,3 etc...) I have them setup to lap each other.  However multiple bottom plates do not lap, they are currently setup just to stack.

The items for tomorrow's programming todo list are:

- Setup the HTML form and backend for the wall edit feature.
- Finish cleaning up the global settings, HTML and backend.
- Further debugging and refinement of the stud placement module.

Future items:

- Addition of window and door modules (framed openings)
- Advanced wall options (sheathing, cladding, gypsum, insulation, trim, holdowns etc...)
- Window and Door Plugin
- Gable Wall Tool
- Polyline tool for Rectangular Wall Tool

I'm sure there are plenty of other items that don't come to mind right this minute, please feel free to pass along any thoughts, comments or suggestions.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

Working on the advanced options this morning, I've added in sheathing, cladding and gypsum:



As windows and doors are added to the wall they will automatically cut holes into the framing and these three other building layers.  The code to cut holes in solids is actually not to difficult, I developed it with the foundation plugin when I needed to add foundation vents into stemwalls.

I will probably put the cavity insulation and the holdowns on the backburner for a a while as I focus on the wall edit function and the window and door (framed opening) module.

I've also added one additional (Tee Corner) corner configuration for each end of the wall.

I will also be adding in two additional parameters so when you edit a given wall panel you can offset the sheathing and cladding above or below the actual wall panel to tie into a rim joist above or below.  Some contractors also like to lap the sheathing and cladding over the foundation rather than having it flush with the sill/bottom plate. 

On a similar note it might also be useful to allow the user to set the bottom plate as pressure treated (ie. garages where the wall is directly in contact with the foundation).  I'm not sure yet where I want to put this parameter.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

PT bottom plate option added into the first menu.

The little structure below is not much to look at (no windows or doors yet) but it is the first time I've been able to create an entire building envelope with absolutely no manual editing of the SketchUp model.  This in itself is a major break through for me.  I used all three plugins to create the model: Foundation, Truss and Wall.





All principal architectural elements are there: sheathing, cladding, gypsum, anchor bolts, rebar, concrete, roof cladding, gutters etc...

The only items missing are exterior and interior trim/molding and of course the windows and doors.

My next push will be the windows and door module.

The time required to create the walls was under a minute however once I have the polyline tool enabled this will cut down the initial wall creation time to literally seconds.

Insertion of doors and windows will always take a bit longer primarily because the designer actually needs to determine where they want to place their openings.  There is not much one can do about that other than to make the actual placement/insertion process as intuitive and automated as possible.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Medeek

The wall edit feature is now functional and seems to be fairly robust:



The wall edit menu shown above.

Originally I was going to have all the windows and doors load up within this same menu but given how big it has grown already I think a separate edit menu for door and windows would be more practical.

I will also need to add in some additional code so that when certain parameters are modified in the wall edit menu those changes are then propagated to other wall panels that are assigned to the same wall group letter.
Nathaniel P. Wilkerson, P.E.
Designer, Programmer and Engineer

Don_P

Things to think about, header sizing, maybe open a table unless it can look up and see the loads above, number of jacks. a reminder to look at the floor under point loads from big opening jacks.