Skip to content

Beam tool ​

The Beam tool is a linear tool built into DimSum: two clicks make one beam, its own item, drawn as wide as its material × its plies, labelled B1, B2 …; its length is turned into what you actually order by Shortest and Longest Length and your own Length Rules, counted into a Beam Material part, a Flitch Material for headers, and an LF Material past the longest length — fixed parts that can't be deleted. the beams you place from one tool all live inside that tool's item as Beam Items, each with its own plies and label, and a beam starts and stops exactly where you click. the joists on the page read the beam's height and depth for hangers, attaching and bearing, Beam Ends act, and a beam can be copied and pasted with its own values. a beam has a real Beam Width and Beam Depth, from its material or typed on the tool or one beam, and a dashed break line that decides where the joists break.

Overview ​

The Beam tool is for headers, flush and dropped beams, LVLs, glulams, steel and deck beams. Each 2-click line is one beam, drawn at its true width.

Where this differs from the older design ​

This page was first written before the direction. Where they disagree, the direction wins:

The older page said
Materials are yours: the beam material, hangers and labor are parts you buildBeam Material, Flitch Material and LF Material are fixed parts of the tool. Hangers, posts and labor are still your own parts
Pick Material, Size and Plies in Tool SettingsLink the Beam Material to a table and filter it; Plies and Beam or Header are asked on placing
Beam Type: Flush, Dropped, Raised/Header, Custom, setting top of beamBeam or Header (a Header adds Flitch). Flush / Dropped are later; how a beam meets the joists is
Base Elevation and computed TOB / BOBElevation is the bottom of the beam: the level's elevation plus an Elevation Offset, with a Level dropdown. TOB is later
The tool stays armed; two more clicks make the next member of the same item: two more clicks made the next item. : the next beam goes into the same Beam Tool item, as a Beam Item
Ordered length by a Rounding Preset or a stock length listShortest Length, Longest Length, Length Step and the Length Rules; past the longest, the LF Material
Label (2) 1 3/4" x 11 7/8" LVL – 16', the length rounded by Label RoundingBeam label B{Beam #} ({Plies}) {Beam Material > Description} – {Ordered Length}. Label Rounding is later
In the Framing example libraryIn DimSum Defaults → Framing, built in

Where to find it ​

  • Tools panel → DimSum Defaults → Defaults → Framing → Beam Tool, tagged BEAM where a Linear tool says LF. Your copies sit in your own folders ("LVL Beam 1 3/4 x 11 7/8", "Deck Beam 2x10 PT").
  • Tool Designer → DimSum Defaults → Defaults → Framing → Beam Tool, read-only, with Copy to a folder of my own… on the banner.
  • Properties panel of a Beam Tool item: the Beam and Framing groups, the Length Rules row with Edit rules…, the Members table, and Elevation Offset with its Level ▾, then Elevation. the Beam group reads Beam or Header, Plies, Beam Width, Beam Depth (blank shows the material's, from Beam Material: 1 3/4"), Break Line, the lengths and rules, Beam Ends and the read-only Member Width; in Appearance, Line Width is read-only on a beam, with the hint A beam is drawn at its Member Width.
  • Project Tree and Takeoff list: Beam Tool ▸ B1, B2 …. Click a beam and the plan pans to it and selects it.
  • Properties panel of one beam: select a beam on the plan, or click its B number in the tree. It shows the beam's numbers (Beam #, Member Length, Ordered Length, Beam Qty, LF Qty, and Rule 2, Default or LF), the beam's own values (each with a chip, Own value or From the tool, and a ↺ Use the tool's value), its fixed parts, and its Elevation.
  • A job's copy of the tool has the same tab in Tool Settings → Label.
  • Changing the built-in tool itself: Behind the scenes 🔒.

How to use it ​

Place beams ​

  1. Copy the Beam Tool into a folder of your own (or into the job), and link its Beam Material to your table: for example Call Size equals 2x10 and Stock Length equals {Item > Ordered Length}. Link the LF Material and, for headers, the Flitch Material the same way.
  2. Click your copy in the Tools panel. It asks Beam or Header and Plies (2 by default): these are the tool item's values, and every beam follows them unless you give it its own. Place.
  3. Click one side of the beam (a bearing wall or post), then the other side. The line is the beam's centreline: the tool's Draw Side is center. The beam starts and stops exactly on your two clicks. That's beam B1, inside the tool's item.
  4. Click two more points for the next beam. That makes B2, in the same tool item, in one Undo. Hold Ctrl while clicking to put a beam on the other side of the line, as on any Linear.
  5. Esc stops the tool. Select the tool to change every beam at once, or select one beam to give it its own Plies, Beam or Header, Beam Ends or Elevation Offset.

Length Rules: what length is actually used ​

Select a beam (or the tool, in the designer) → Length Rules row → Edit rules…. The row reads No rules, 1 rule or 3 rules. The editor is one column: a line saying how the rules work, the table of rules across the whole width, then Add rule. Each row says: for a beam over From, up to To long, with these Plies (or Any), Use

  • A stock length (and how many): order that length instead;
  • Plies end to end: the plies laid end to end as one length (3 plies × 3' = 9'), rounded up to the next stock length;
  • A fraction of a stock length: the share of one stock length the plies use, rounded up to the step you give (0.25).

The Stock length is picked from a list of the tool's own stock lengths (8', 10' … 20'), never typed; it's greyed for Plies end to end, which finds its own. From and To are typed as lengths (4'). With no rules, the editor says No rules — every beam is ordered by the default rule.

Add and remove rows, move them up and down with the arrows, then Save: one Undo. Esc or Cancel closes without saving. The first row that matches a beam decides; a beam no row matches uses the default rule. The shipped table is empty (Q10 below).

the three examples, as rules:

saidFromToPliesUseStock lengthQty or stepThe beam's result
"a 2-ply beam, at 4' … from 0-4', 2-Ply we use a single 8'"0'4'2A stock length8'1one 8'
"a 3-ply 3' beam, we can use a 9' those dont exsist, so we set it to 10'"0'3'3Plies end to end9' → one 10'
"a single 2', we want to set it to a fraction of 8', like .25 of an 8', then our qty will be .25"0'2'1A fraction of a stock length8'0.250.25 of an 8'

The default rule (no row matches): round the beam up to the Shortest Length, then up to the next stock length, one piece per ply. A 2-ply 15'-2" is 2 × 16'; a 1-ply 4' is 1 × 8'.

Plies end to end that would come out longer than the Longest Length doesn't apply, and the next rule is tried (a 3-ply 7' is 21', so it falls through to the default: 3 × 8').

A refused table says why, inside the editor, which stays open for you to fix it: Length Rules isn't a rule table, Length Rules holds up to 50 rules, Rule 2: the From length must be less than the To length, Rule 2: pick a stock length, Rule 2: Plies must be a whole number of 1 or more, Rule 2: Qty must be more than 0. It shows just the sentence.

Longer than the Longest Length: the LF Material ​

A beam longer than the Longest Length isn't ordered as stock. It goes to the LF Material, with LF Qty = length × plies: a 2-ply 30' beam is 60 LF, and its Beam Qty is 0. A beam exactly 20' is still stock (20' × 1).

The Members table ​

Under the tool item's properties, Members shows one line per beam in the item: #, Length (as drawn), Uses (the stock length, or LF Material), Qty (pieces, or the LF) and How: Rule 2, Default or LF.

Beam or Header, and the Flitch Material ​

  • Beam or Header is asked when you place the tool, and can be changed on the tool item.
  • Its Qty is {Item > Member Count}, one per beam (Q7 below). On a Beam it's off and left out of every total. a beam with its own Header has a flitch, and a Beam beside it in the same tool item has none.

Beam Ends ​

Beam Ends is Create Beam Pocket, Attached with Hanger or Nothing (the default).

  • Attached with Hanger gives the new fixed part Beam Hanger Material a qty of 2 per beam, one for each end.
  • Create Beam Pocket gives the new fixed part Beam Pocket Material a qty of 2 per beam, and produces nothing else (walls come later). The material is there for extra studs, a metal shim, or a hanger.
  • Nothing gives neither, and neither part has a line in Estimating.
  • Both ends of a beam follow its Beam Ends; each end can't be set on its own. An LF beam counts the same, since it still has two ends.
  • Where the numbers come from: Beam Hanger Count and Beam Pocket Count, two outputs of the tool. On one beam each is 2 or 0; on the item, the sum over its beams.
  • One beam can have its own Beam Ends, and its ends then follow that.

The fixed parts ​

PartQtyUnitShipped size
Beam Material{Item > Beam Qty}eaWidth 1 3/4", Depth 11 7/8"
Flitch Material{Item > Member Count}, on only when Headerea
LF Material{Item > LF Qty}ft
Beam Hanger Material{Item > Beam Hanger Count}: 2 per beam with Attached with Hangerea
Beam Pocket Material{Item > Beam Pocket Count}: 2 per beam with Create Beam Pocketea
  • Each is at the top of the item's parts with a lock badge: Fixed — part of the Beam tool. Existing jobs, and your own copies of the tool, gain them when they are opened.*
  • Delete, Move into another part and Make Linear / Area / Point are greyed with the reason. A command that tries is refused: Beam Material is part of the Beam tool, so it can't be deleted — set its Qty to 0 instead (or … so it stays at the top of the parts, or … so it stays a Part), and the app shows just that sentence. Reordering them among the top-level parts is fine.
  • Rename them if you like; the tool finds each by what it is, never by name.
  • Duplicate one, or save it as a saved part, and the copy is an ordinary Advanced Part.
  • the Beam Material matched one row, and Needs attention warned if an item held beams of different ordered lengths.
  • each beam matches its own row, by its own Ordered Length, so that warning is gone. Estimating and reports show one line per matched material for each fixed part, such as Beam Material — LVL 16' — 2 ea (B1), and the item-level line for that part goes away, so nothing is counted twice. A beam with no match is flagged: {n} of {N} beams in {Item} have no Beam Material match — {why}.

Set the elevation and the level ​

  • Elevation is the bottom of the beam.
  • Each beam can have its own.
  • Elevation is worked out: the level's elevation plus the offset. It's read-only, and its hint reads Bottom of the member: the level's elevation plus the offset.
  • The level is the page's level, unless you pick another with the Level ▾, which moves to the Elevation Offset row. The Level dropdown stays. Picking a level never changes the offset.
  • If the level has no elevation, the offset stands alone: Elevation is just the offset. the row kept the same hint.

Attach joists to a beam, and set the joint at a beam ​

The beam is where you do it. The joists' side of it (what a hanger is, what each joint does) is on Joist & Rafter tools.

  • Attach to beam, when it crosses a joist area at the joists' height. One Undo (Attach joists to B1).
  • Detach from joists, when it is attached (Detach joists from B1).
  • Joists at this beam ▸ Bypass · Butt · Lap · Sister · Cantilever · Follow the tool, when it is under the joists of an area (the current choice is ticked). At the ends of the joists the list is Bypass · Cantilever · Follow the tool. When the beam crosses one area and only meets the ends of another, Butt, Lap and Sister go to the areas it crosses. One Undo (Butt joists at B1, or Joists at B1 follow the tool).
  • On a locked item these are greyed, with the reason.
  • Or use the beam's Properties, a Joist areas block for each area it crosses or meets:
  • Crosses Joist Tool Area 1 at the joists' height — 19 joists, with Attach to beam;
  • Attached to Joist Tool Area 1 — 38 joists, 38 hangers, with an Offset field (blank follows the tool's Attach Offset) and Detach. The joists counted are the cut pieces that meet the beam (19 joists cut in two make 38);
  • Under Joist Tool Area 1 by 2" — 19 joists, with Joints ▾ (Follow the tool (Bypass) or one of the five) and a Length field when the joint has one;
  • 38 of 38 joist ends hung from it (or 19 joist ends bear on it) for a beam that only meets the ends;
  • Cuts into Joist Tool Area 1, for a beam that cuts into the joists without lining up with them.
  • Attached on its own to Joist Tool Area 1 — 38 joists, 38 hangers, with Detach, for a beam the joists attached to by themselves (Auto-attach); Detached from Joist Tool Area 1 — 19 joists, with Attach to beam. Every attached block, on its own or by hand, shows Offset 8" — from Joist Tool (the Joist item's name), read-only, with Change on Joist Tool, which selects that Joist item and takes you to its Attach Offset. The Offset field is gone, because the offset is the Joist tool's (Joist & Rafter tools). A beam that kept its own offset reads Offset 8" — its own, from an older DimSum, with Use Joist Tool's offset (one Undo, Use Joist Tool's attach offset at B1), which puts it back on the tool's.
  • Needs attention has a button on the rows that have a fix: Attach to beam, Detach or Follow the tool.
  • The tree reads the beam's detail with · attached to Area 1 (several areas: · attached to 2 areas).
  • The beam's Properties also show Member Depth (like 11 7/8" (from Beam Material), or unknown), Bottom and Top (feet and inches, read-only), Hanger Overlap, Joist Hangers, Beam Hanger Count and Beam Pocket Count. Hanger Overlap and Joist Hangers are the beam's own values (chip Own value or From the tool, with a ↺).
  • On the plan: a beam with Attached with Hanger shows a short dark tick at each end, 2" inward along the beam and a little wider than it. Create Beam Pocket draws nothing. While the beam is selected, a small red ring marks a place where it runs through, or cuts into, the joists. Ticks print; rings don't.
  • Auto Attach is on by default in every Joist tool, existing jobs and your own copies included, so a beam that already ran through joists that way attaches when the job opens. Drawn through the middle of the 24' × 14' area, it cuts the joists at its faces: 38 pieces, 38 hangers.
  • Raised 3/16", it isn't attached, and Needs attention says why: B1 runs through Joist Tool Area 1, but its bottom is 3/16" above the joists', so they aren't attached on their own — attach them, or change an elevation. A deeper beam whose top lines up with the joists' top but whose bottom is lower isn't attached on its own either (question 14).
  • Right-click it → Detach from joists (Detach joists from B1): the joists run through whole again (19), with no Needs attention row, and it stays detached. Right-click again → Attach to beam. Each is one Undo.
  • Auto Attach off on the Joist item: the beam runs through, flagged attach the joists to it, as

The beam's real size ​

  • Three new inputs in the Beam group:
  • Beam Width: one ply's width (question 12). Blank: the Beam Material's Width, and the box reads it in grey, from Beam Material: 1 3/4".
  • Beam Depth. Blank: the Beam Material's Depth, read the same way.
  • Break Line: Center, Left face or Right face (below).
  • Where a size comes from, the first that gives a number over 0:
  1. the beam's own Beam Width or Beam Depth (select one beam and type it; chip Own value);
  2. the tool's Beam Width or Beam Depth (typed, a formula, or linked to a table);
  3. the material's Width or Depth: the Beam Material's, or the LF Material's for a beam past the Longest Length when it has one. A beam matched to its own row takes its own row's size. The material's Depth and Width come from the columns you chose in the library (Materials Library);
  4. none: the beam meets no joists (no width), or is judged by bottoms lining up (no depth), as
  • Member Width = the ply width × Plies (the beam's own Plies, else the tool's): a 3-ply of 1 3/4" is 5 1/4". It's a read-only row at the end of the tool item's Beam group, and on each beam's Properties with where it came from: from its own Beam Width, from Beam Tool's Beam Width (the tool item's name), from Beam Material (from LF Material on an LF beam) or unknown. Member Depth says the same: from its own Beam Depth, from Beam Tool's Beam Depth, from Beam Material.
  • One beam can have its own Beam Width, Beam Depth and Break Line, with the Own value / From the tool chip and ↺ like its other own values. Give B2 its own Beam Depth of 16" and its Member Depth is 16" and its Top moves; the other beams keep theirs.
  • An LF beam whose LF Material has no size takes the Beam Material's width and depth, so it gets hangers like any beam (question 21). its depth was unknown.
  • Where the size goes. The beam is drawn, hit-tested, snapped and printed at its Member Width.
  • Line Width on a beam is Member Width. {Width} and {Line Width} mean the real width there, and the row is read-only, with the hint A beam is drawn at its Member Width. Typing over it is refused: A beam is drawn at its Member Width — change Beam Width or Plies.
  • A typed size never stops anything. A Beam Width or Beam Depth of 0 or less, or one that can't be read, falls through to the next source, and Needs attention says so: Beam Width must be more than 0, so Beam Tool uses its Beam Material's Width. Refused on one beam: Beam Width must be more than 0.
  • A Height but no Depth. When the Beam Material has a Height and no Depth, and its library's Depth column is set to None, Member Depth keeps the part's own Depth and Needs attention says so: B1's Beam Material has a Height of 9 1/4" but no Depth, so Member Depth reads 11 7/8" — type Beam Depth, or pick the library's Depth column.
  • Labels: {Member Width}, {Member Depth}, {Beam Width}, {Beam Depth} and {Break Line} can go in a beam label.

The break line ​

  • Where it sits. Along each span of the beam, at its Center (the default), its Left face or its Right face, looking along the beam the way it was drawn. Set it on the tool (Break Line: Center, Left face or Right face, only from the list), or on one beam (question 15).
  • What it does at a beam under the joists (Joints at a beam below the joists):
  • Butt: both pieces end at the break line;
  • Lap: the lap is centred on it;
  • Sister: the pieces butt at it, and the sister piece is centred on it;
  • Cantilever still runs from the beam's far face, and Attach still cuts at the two faces.
  • On the plan, it's a thin dark-grey dashed hairline (6" dashes, 3" gaps) on every beam, above the beam's band and under the hanger marks. It can't be clicked, and it hides with the beam. It's faint on a dark beam colour (known).
  • In print, it's one dashed hairline per span of the beam.
  • A beam with Bypass still shows its break line: it marks where the joists would break.
  • An unreadable Break Line reads as Center, and Needs attention says so: Break Line is ERROR, so Beam Tool's beams break at their centre.

Where a beam takes the rim's place ​

A beam can stand in for it:

  • A beam at the joists' height (bottoms lined up) whose band lies along a rim edge takes the rim's place on that stretch. The rim there is cut out (its rim member says A beam takes part of this edge), and the joists hang from the beam with hangers, as at any beam
  • A beam below the joists keeps the rim on top of it, and the joists bear on it.
  • Rim never makes a hanger itself. The beam's own size is read for this the same way as for the joists (The beam's real size).

Change the label ​

A beam's label is its tool's label template, made in the label designer (Tool Designer → the Label tab).

  • Beam label — on by default, one per beam. Its text is B{Beam #} ({Plies}) {Beam Material > Description} – {Ordered Length}, read for each beam, so one tool can show B1 (2) … – 16' and B2 (3) … – 12'. Beam #, Member Length, Ordered Length and Beam Qty are on its field list.
  • Tool label — off by default, one for the whole Beam Tool item: {Name}: {Member Count} beams. Turn it on if you want a count beside the beams.
  • On the tool's Label tab a picker above the designer chooses which one you're editing: Tool label | Beam label. Each has its own Show row: Follow System Settings, Show or Hide.
  • On a beam item, Properties → Appearance has a second row, Beam labels: Follow the tool, Show or Hide (one Undo: Show beam labels, Hide beam labels or Beam labels follow the tool). Beam labels can't be dragged one by one and a beam label is drawn in the tool's colour (the joist label is black).
  • To change it: Tools tab → your beam tool → Label tab (or, for this job only, its Tool Settings → Label). Edit its text pieces, add a symbol or a box, then Save label. A text piece fills {fields} but reads anything else as plain words; a piece of its own that starts with = is a formula.
  • Each {field} reads in its property's own format, as Properties shows it: Mark # reads 1, Plies 2, Ordered Length 16'. (Before 0.5.30 each field showed in the formula preview's style, so the label read B1.00 (2.00).) A whole = formula piece keeps the preview's style.
  • Marks: {Mark #} numbers the beams B1, B2 … across the job in the order they were made, and renumbers when one is deleted. {Beam #} is that same number read for each beam, and {Mark #} inside a beam label reads the beam's number too. Add {Level > Label Prefix}- in front for M-B1 once level prefixes exist.
  • Label Rounding (later): a piece like =ROUNDTO({Member Length}, {Label Rounding}) waits for the Rounding Presets. {Ordered Length} is already a stock length.
  • Where the label sits (along the beam or level, a leader, draggable) is on the same tab, and starts from System Settings → Labels.

Later: the older design ​

Each of these is designed but not built yet.

Other placement methods (later)

  • Pick Line: click an existing line on the plan (e.g. the dashed beam line) or a CAD beam line to turn it into a beam.
  • Continuous: click a multi-span line; it's split into members at the supports.

Placement reference — Centerline (default), Left face or Right face for every beam a tool places, and per beam with Ctrl while placing.

Split a beam (later): the Cut tool splits a beam at a point into two members.

Cut joists with a beam: Attach to beam cuts the joists to length at the beam, with hangers. It is per beam, not a setting on the beam. See Attach joists to a beam and Joist & Rafter tools.

Decks: deck beams are ordinary beams with a treated material (e.g. "2x10 #2 SYP PT", 3 plies) in the Beam Material's filter. Pair them with a Joist section and Count-tool posts. There's no separate deck tool.

Stair Stringer mode Coming ​

A stringer is a sloped member, so the Beam engine already knows how to draw, label, list-match and show it in 3D.

What it does ​

You draw the stair run in plan. DimSum then works out the risers and treads from the total rise, gives the stringer's sloped length, list-matches it to a stock length, and draws a sloped stringer in 3D from the lower level to the upper level.

Walkthrough: a straight stair between two levels ​

  1. Arm the Beam tool and set Mode = Stair Stringer (or use a "Stair Stringer 2x12" copy, which has the mode already on).
  • Total Rise: defaults to the elevation difference between this level and the next level up. Type a value to override (e.g. for a landing or a split-level).
  • Riser Height (max 7 3/4") and Tread Depth (min 10"), or type a Riser Count directly.
  • Stair Width (e.g. 36") and the Stringer Count rule (default: 4 stringers per 3' of width).
  • Stringer Material (default 2x12 from the Dimensional Lumber list).
  1. Draw the run in plan: click the bottom of the stair (the first riser), then the top (where it lands). The arrow points up the stair.
  2. DimSum computes the risers, treads and stringer length, labels the stair (e.g. 14R @ 7 11/16" – 13T @ 10" – (4) 2x12 x 16'), and draws the stringer sloping from the lower level to the upper level in 3D.
  3. If the drawn run doesn't match treads × tread depth, the typed numbers win and a ⚠ note shows the difference ("drawn 10'-6", typed 10'-10" — 4" short"). See "Typed numbers beat the drawing" below.
  4. Add your parts (or use the example set): Stringers (Qty {Item > Stringer Count}, list-matched on {Item > Ordered Length}), Treads (Qty {Item > Tread Count}, length = Stair Width), Risers, Handrail (LF from {Item > Stringer Length}), Labor (optional).

Stair Stringer settings ​

Every one of these is a default you can change — riser and tread limits, the stringer rule, the stock size and the cut allowance. Nothing about stairs is fixed in the code.

SettingDefaultNotes
ModeBeamSwitch to Stair Stringer
Total RiseLevel-to-level elevation differenceNext level up minus this page's level; typing a value overrides it
Max Riser Height7 3/4"Editable (IRC residential is only the shipped starting point)
Min Tread Depth10"Editable
Riser CountComputedOr type it to force a count
Stair Width36"Drives treads and the stringer count
Stringer Count rule4 stringers per 3' of stair widththe default — a 3' stair gets 4, a 6' stair gets 8. Change the rule to "3 per stair", "+1 per extra 16"", a flat count, or any formula on {Stair Width}.
Cut Allowance12"Added to the stringer's ordered length for the top and bottom cuts. Set it to whatever your crew wastes, or 0.
Stringer Material2x12From the list; ordered length list-matched to stock
Run sourceTyped values winThe drawn run never overrides typed tread depth × count; the difference is flagged ⚠

Typed numbers beat the drawing ​

Wherever a hand-entered number meets a drawn one, the typed number wins. The drawing is a measurement aid; the numbers you typed are what you meant.

  • On a stair: typed tread depth × tread count sets {Total Run}, even if the run you clicked is 4" shorter.
  • The shape stays where you drew it, and a ⚠ badge shows the difference in the Properties panel, on the plan and on the Estimating tab, so nothing is hidden.
  • Clear the typed value and the drawing takes over again.
  • The same rule applies to every tool, not just stairs.

Stair Stringer quantities (Properties) ​

PropertyFormula
{Riser Count}CEILING({Total Rise} / {Max Riser Height})
{Riser Height}{Total Rise} / {Riser Count}
{Tread Count}{Riser Count} − 1 (the top floor is the last "tread")
{Total Run}{Tread Count} × {Tread Depth}
{Stringer Length}SQRT({Total Run}² + {Total Rise}²) (sloped length along the stringer)
{Stringer Count}From the stringer count rule, e.g. RoundUp({Stair Width} / 3' , 0) * 4 for "4 per 3'"
{Ordered Length}{Stringer Length} + {Cut Allowance}, then the next stock length
{Stair Angle}ATAN({Total Rise} / {Total Run})

Worked example ​

Total rise 9'-0" (108"), max riser 7 3/4", tread 10", width 36", 2x12 stringers.

QuantityCalculationResult
Riser Count108 ÷ 7.75 = 13.94 → CEILING14
Riser Height108 ÷ 14 = 7.714"7 11/16" (to 1/16")
Tread Count14 − 113
Total Run13 × 10" = 130"10'-10"
Stringer Length√(130² + 108²) = √(16,900 + 11,664) = √28,564169.0" ≈ 14'-1"
Stair Angleatan(108 ÷ 130)≈ 39.7°
Cut Allowance169.0" + 12" = 181.0"15'-1"
Ordered LengthNext stock length (2' steps) above 15'-1"16'
Stringers4 per 3' of width; 36" = 3' → 44 × 2x12 × 16'

The stringer length is the plain hypotenuse; the Cut Allowance (12" by default) is added before rounding up to a stock length, so the top and bottom cuts are paid for. A 6'-wide stair with the same rule takes 8 stringers.

If the drawn run disagreed: say the run was clicked at 10'-6" instead of the typed 13 × 10" = 10'-10". The typed numbers win — {Total Run} stays 130", the stringer stays 169.0" — and a ⚠ badge reports the 4" difference.

Options & settings ​

The Beam tool's properties ​

Every input and output is a that exists only on a Beam tool and its items.

Inputs (group Beam)

PropertyDefaultNotes
Beam or HeaderBeamBeam · Header. Input: asked on placing. A Header turns on the Flitch Material. a beam can have its own
Plies2A whole number, 1 or more. Input: asked on placing. a beam can have its own
Shortest Length8'The first stock length, and the least any beam is ordered at
Longest Length20'The last stock length. Longer beams go to the LF Material
Length Step2'The stock list is Shortest, Shortest + Step … up to Longest (8', 10' … 20'). A Longest the steps miss is added at the end
Length RulesNo rulesThe rule table, edited with Edit rules…. It takes typed values only, never a formula
Beam EndsNothingCreate Beam Pocket · Attached with Hanger · Nothing. acted on, 2 per beam (Beam Ends). a beam can have its own

On the tool: Line Width = {Beam Material > Width} * {Plies}, and Draw Side = center. on a beam, Line Width reads Member Width instead, read-only, with the hint A beam is drawn at its Member Width (The beam's real size).

Outputs (group Beam)

PropertyWhat it is
Member CountThe beams in the item
Member LengthThe beam's drawn length, in ft (shown ft-in). No bearing is added
Ordered LengthThe stock length the beam uses; empty when it all goes to the LF Material
Beam QtyHow many of the Ordered Length: plies, 1, or a fraction, by the rules
LF QtyLength × plies, in ft, for a beam past the Longest Length; otherwise 0

Framing (shared with the Joist tool)

PropertyDefaultNotes
Elevation Offset0How far above the level the bottom of the beam is, with the Level ▾ beside it. A beam can have its own. Replaces's typed Elevation
ElevationWorked outthe level's elevation plus the Elevation Offset (just the offset when the level has no elevation). Read-only. a typed number or {Level > Elevation}, with the Level ▾
Mark #Worked outB1, B2 … across the job, in the order the beams were made
Beam #Worked outThe beam's number, read for each beam. Whole number

On the Designer and the Tools Playground, with nothing drawn, the outputs read unavailable and Mark # reads 1.

When an input can't be used, every output is an error with a sentence: Plies must be 1 or more, Longest Length is shorter than Shortest Length, Set this page's scale to work out the beam lengths, or Plies is ERROR, so the beam lengths can't be worked out. A rule table written by something else that can't be read gives a warning, Length Rules can't be read, so the default rule is used, and the default rule; the row reads Can't be read — the default rule is used. Needs attention lists a beam with an error under Beams, and that warning under Length Rules.

Later settings ​

The older design's settings that aren't:

SettingWhat it doesDefault
Material / Size dropdownsPick a size from the Materials Libraryfilters the Beam Material instead
Depth (Height), Orientation3D size, On EdgeLater (3D). Beam Depth and Member Depth give the beam its real depth for the joists now; 3D and Orientation stay later
Beam TypeFlush / Dropped / Raised-Header / Custom, setting top of beamLater; has Beam or Header
Label RoundingAny Rounding PresetNearest 2 ft
Dashed centerlinePlan convention for dropped/hidden beamsOption. Not's break line, which is dashed on every beam and marks where the joists break
Cuts JoistsSplit crossed joists with a gap = beam widthReplaced by Attach to beam: per beam and per joist area, not a setting on the beam
Bearing LengthAdded at each end3"
Ordered Length ruleA Rounding Presetuses the stock lengths and Length Rules
Show plies in 3DSeparate laminationsOption
ModeBeam / Stair StringerBeam

Elevation by Beam Type (later): Flush, top of beam = level elevation − subfloor thickness; Dropped, top of beam = level elevation − floor-joist depth; Raised / Header, bottom of beam = level elevation + opening height; Custom, typed. {Top Elevation} (TOB) and {Bottom Elevation} (BOB) would show in the label and 3D.

Rounding presets (label) Coming ​

Rounding comes from the Rounding Presets table — a user-extendable list of name + increment + direction + unit (see The DimSum Defaults tools for the full set). It's for labels: what you order comes from the stock lengths and the Length Rules

Member lengths 15'-2" and 16'-11":

Preset15'-2" →16'-11" →
Nearest 2 ft (label default)16'16'
Up to next 2 ft (even)16'18'
Nearest 1 ft15'17'
Up to next 1 ft16'17'
Nearest 6"15'-0"17'-0"
None15'-2"16'-11"

⚠ "Nearest" ties round up (13'-0" at Nearest 2 ft → 14'), but "Nearest" can still round down: a 16'-11" beam would be labelled 16'. The Ordered Length is never rounded down.

Quantities, later ​

{Hanger Count} is the Joist Tool's, Board Feet, Weight (steel), Volume, {Top Elevation} and {Bottom Elevation} are later.

Your own parts ​

Beside the three fixed parts, a Beam tool can carry any parts you build: posts, labor, and any hangers other than the ones the tool counts.

Examples ​

A header, 2-ply LVL ​

Placed as Header, 2 plies, Beam Material filtered to 1 3/4" × 11 7/8" LVL, drawn 6'-4":

  • Line Width = 1 3/4" × 2 = 3 1/2", centred on the drawn line.
  • Ordered Length: default rule → 8', Beam Qty 2. Beam Material Qty 2.
  • Flitch Material on, Qty 1.
  • Label: B4 (2) 1 3/4 x 11 7/8 LVL – 8'.
  • Elevation: the bottom of the header, following the page's level until you pick another or type one.

The older examples (Flush / Dropped, TOB / BOB, bearing, rounding presets and board feet are later) ​

Flush LVL: 2-ply 1 3/4" × 11 7/8" LVL, Flush, drawn 15'-2", Main Level at 10', 3/4" subfloor: TOB = 10' − 3/4" = 9'-11 1/4"; BOB = 8'-11 3/8"; Ordered Length 16'. Board Feet: 1.75 × 11.875 × 16 ÷ 12 = 27.71 per ply → 55.42 BF.

Dropped beam, 3-ply 2x10: level 10', 2x10 floor joists: width 3 × 1 1/2" = 4 1/2"; TOB = 10' − 9 1/4" = 9'-2 3/4"; BOB = 8'-5 1/2".

Raised header: 2-ply 2x10 header, opening height 6'-10" on the 10' level: BOB = 10' + 6'-10" = 16'-10". type that bottom as the Elevation.

Steel W8x18: drawn 18'-6", label rounding Nearest 6" → label W8x18 – 18'-6"; weight 18 lb/ft × 18.5 ft = 333 lb.

Member length with bearing: clear span 14'-0" with Bearing Length 3": 14' + 3" + 3" = 14'-6" → ordered 16'.

Attach to beam: a 3 1/2" flush beam across the middle of a 24' joist span, attached: each joist becomes two pieces of 11'-10 1/4", with 2 hangers per joist.

Tips & shortcuts ​

  • Click from one bearing point to the other; with the centreline default you don't need to think about which face you're tracing.
  • Set up the Length Rules once on your copy of the tool: every beam placed from it uses them.
  • Filter the Beam Material's Stock Length equals {Item > Ordered Length}, so the matched row is the length the rules chose.
  • Link the LF Material to the item number your yard sells by the foot.
  • Keep Plies ticked Input so the tool asks. every beam follows the tool's Plies unless you give one its own: select the beam and change it there.
  • Put the beams that share a size in one tool item, and change the tool to change them all.
  • For non-lumber trades (steel, glulam), set the Length Step and the stock lengths to what your supplier sells.

Rules, limits & edge cases ​

  • Beam Material, Flitch Material and LF Material can't be deleted, moved under another part or given another Type. Set a Qty to 0 instead. A copy of one is an ordinary Advanced Part.
  • A tool's behaviour never changes. A Beam tool and its copies stay Beam tools; Save as tool… from a beam item makes a Beam tool; a new tool or a saved part is plain.
  • An item keeps its behaviour if its tool is removed from the job.
  • Length Rules holds up to 50 rows, and takes typed values only. A rule's From must be less than its To; Plies a whole number of 1 or more; a stock length must be picked for A stock length and A fraction; Qty more than 0.
  • Plies is rounded to a whole number before it's used.
  • An older DimSum opening the job sees a beam as a plain Linear and its fixed parts as ordinary Advanced Parts; an item it duplicates is plain.
  • A beam's own values are Plies, Beam or Header, Beam Ends and Elevation Offset only. The stock lengths, the Length Rules and the materials are the tool's, for every beam.
  • One member = one straight line. Curved beams aren't supported in v1.
  • Stair Stringer mode (later) handles straight runs. L-shaped / U-shaped stairs are two stair instances with a landing.
Planbase Estimating LLCDimSum Takeoff
Sheet titleBeam tool
SectionSmart framing tools
StatusAvailable
ScaleNTS
Sheet30 / 57

DimSum Takeoff by Planbase Estimating LLC · Kansas City, Missouri