Skip to content

Splined mitre corner

joints.splined_mitre_corner

A picture frame corner with a spline hidden in the mitre.

The spline, 4 mm oak, 40 mm long, runs along the mitre line in the middle of the thickness, 6 mm into each part, in grooves cut square to the mitre faces (with a slot cutter), stopped short of both edges.

Splined mitre corner, assembled

Splined mitre corner, exploded

Parameters

Parameter Default
stile_length 300
rail_length 200
width 45
stock 20 mm board, oak

Change them in a design file (see Change an example):

from woodwright.examples import joints

design = joints.splined_mitre_corner(stile_length=375)

Drawings

The plans in one PDF: plans.pdf.

Assembly

assembly

Parts

parts

Rail

rail

Spline

spline

Stile

stile

Cut list

stile   300 x 45 x 20 mm  oak
        - mitre 45 deg on right_end, back_edge inside
        - spline groove 4 mm, 7 deep, square to the mitre with rail, along the mitre line, 10 from top_face
rail    200 x 45 x 20 mm  oak
        - mitre 45 deg on left_end, back_edge inside
        - spline groove 4 mm, 7 deep, square to the mitre with stile, along the mitre line, 10 from top_face
spline  40 x 12 x 4 mm  oak

Code

From woodwright/examples/joints.py, which imports the names it uses (see From an example to your own design):

def splined_mitre_corner(
    stile_length: float = 300, rail_length: float = 200, width: float = 45, stock: Stock = OAK
) -> Assembly:
    """A picture frame corner with a spline hidden in the mitre.

    The spline, 4 mm oak, 40 mm long, runs along the mitre line in the
    middle of the thickness, 6 mm into each part, in grooves cut square to
    the mitre faces (with a slot cutter), stopped short of both edges.
    """
    asm = Assembly("splined_mitre_corner", root_location=OUTSIDE_CORNER_UP)
    stile = asm.add(Board("stile", stock, length=stile_length, width=width))
    rail = asm.add(Board("rail", stock, length=rail_length, width=width))
    spline = asm.add(Board("spline", THIN_SPLINE_OAK, length=40, width=12))
    asm.join(
        SplinedMitre(
            stile.right_end,
            rail.left_end,
            stile.back_edge,
            rail.back_edge,
            splines=(spline,),
        )
    )
    return asm

Exported with woodwright 0.9.0 on 2026-10-25.