Let in rail¶
joints.let_in_rail
A square rail lapped across a leg of the same section, at the rail's end, partly let in (as the rails of a workbench's legs): the rail is cut to half its thickness, the leg notched a quarter of its, so the rail stands out of the leg by a quarter, towards the viewer. Its end is flush with the far edge of the leg.
Parameters¶
| Parameter | Default |
|---|---|
leg_length |
400 |
rail_length |
300 |
stock |
70 mm board, oak |
Change them in a design file (see Change an example):
Drawings¶
The plans in one PDF: plans.pdf.
Cut list¶
leg 400 x 70 x 70 mm oak
- dado 70 mm, 17.5 deep, in bottom_face
rail 370 x 70 x 70 mm oak
- lap 35 mm thick, 70 long, on left_end
Code¶
From woodwright/examples/joints.py, which imports the names it uses (see From an example to your own design):
def let_in_rail(
leg_length: float = 400, rail_length: float = 300, stock: Stock = POST_STOCK
) -> Assembly:
"""A square rail lapped across a leg of the same section, at the rail's
end, partly let in (as the rails of a workbench's legs): the rail is
cut to half its thickness, the leg notched a quarter of its, so the rail
stands out of the leg by a quarter, towards the viewer. Its end is flush
with the far edge of the leg.
"""
asm = Assembly("let_in_rail", root_location=STANDING)
leg = asm.add(Board("leg", stock, length=leg_length, width=stock.thickness))
rail = asm.add(Board("rail", stock, length=rail_length, width=stock.thickness))
asm.join(
HalfLap(
lap=rail.left_end,
socket=leg.back_edge,
position=offset(100, ref=leg.left_end),
flush=(leg.bottom_face, rail.top_face),
over=True,
proud=stock.thickness / 4,
)
)
return asm
Exported with woodwright 0.9.0 on 2026-10-25.