Chamfered through mortise tenon¶
joints.chamfered_through_mortise_tenon
A through tenon whose chamfered end alone stands proud of the stile, like a low pyramid on the stile's edge.
The tenon is longer than the stile is wide by the chamfer, so the chamfers start where it leaves the stile.
Parameters¶
| Parameter | Default |
|---|---|
stile_length |
600 |
rail_length |
300 |
width |
60 |
chamfer |
2 |
stock |
20 mm board, oak |
Change them in a design file (see Change an example):
from woodwright.examples import joints
design = joints.chamfered_through_mortise_tenon(stile_length=750)
Drawings¶
The plans in one PDF: plans.pdf.
Cut list¶
stile 600 x 60 x 20 mm oak
- through mortise 50 x 8 mm in back_edge
rail 362 x 60 x 20 mm oak
- tenon 50 x 8 mm, 62 long, end chamfered 2 mm, on left_end
Code¶
From woodwright/examples/joints.py, which imports the names it uses (see From an example to your own design):
def chamfered_through_mortise_tenon(
stile_length: float = 600,
rail_length: float = 300,
width: float = 60,
chamfer: float = 2,
stock: Stock = OAK,
) -> Assembly:
"""A through tenon whose chamfered end alone stands proud of the stile,
like a low pyramid on the stile's edge.
The tenon is longer than the stile is wide by the chamfer, so the
chamfers start where it leaves the stile.
"""
asm = Assembly("chamfered_through_mortise_tenon", root_location=STANDING)
stile = asm.add(Board("stile", stock, length=stile_length, width=width))
rail = asm.add(Board("rail", stock, length=rail_length, width=width))
asm.join(
MortiseTenon(
tenon=rail.left_end,
mortise=stile.back_edge,
tenon_length=width + chamfer,
tenon_chamfer=chamfer,
)
)
return asm
Exported with woodwright 0.9.0 on 2026-10-25.