const routerDiameter = 12.7 const mmInInch = 25.4 const templateDiameter = mmInInch * 11 / 16 const templateGap = ((templateDiameter - routerDiameter) / 2) -0.5 const slateWidthHalf = 41.5 / 2 const minClampingDistance = 50 + 30 const templateThickness = 10 const radius = 10 const depth = 30 const length001 = slateWidthHalf - radius const length002 = depth + minClampingDistance const sketch001 = startSketchOn(XZ) |> startProfileAt([0, depth - templateGap], %) |> xLine(length = length001, tag = $seg01) |> arc({ angleEnd: 0, angleStart: 90, radius: radius - templateGap }, %) |> yLine(endAbsolute = -templateGap * 2 - (templateDiameter / 2), tag = $seg05) |> xLine(endAbsolute = slateWidthHalf + templateThickness, tag = $seg04) |> yLine(length = -length002, tag = $seg03) |> xLine(endAbsolute = 0, tag = $seg02) |> xLine(length = -segLen(seg02, %)) |> yLine(length = segLen(seg03, %)) |> xLine(length = segLen(seg04, %)) |> yLine(length = segLen(seg05, %)) |> arc({ angleEnd: 90, angleStart: 180, radius: radius - templateGap }, %) |> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> close() const extrude001 = extrude(sketch001, length = 5) const sketch002 = startSketchOn(extrude001, 'START') |> startProfileAt([ -slateWidthHalf, -templateGap * 2 - (templateDiameter / 2) ], %) |> xLine(length = -7, tag = $rectangleSegmentA001) |> angledLine([ segAng(rectangleSegmentA001, %) + 90, minClampingDistance ], %, $rectangleSegmentB001) |> angledLine([ segAng(rectangleSegmentA001, %), -segLen(rectangleSegmentA001, %) ], %, $rectangleSegmentC001) |> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> close() const extrude002 = extrude(sketch002, length = 7.5) const sketch003 = startSketchOn(extrude001, 'START') |> startProfileAt([ slateWidthHalf, -templateGap * 2 - (templateDiameter / 2) ], %) |> xLine(length = 7, tag = $rectangleSegmentA002) |> angledLine([ segAng(rectangleSegmentA002, %) - 90, minClampingDistance ], %) |> angledLine([ segAng(rectangleSegmentA002, %), -segLen(rectangleSegmentA002, %) ], %) |> line(endAbsolute = [profileStartX(%), profileStartY(%)]) |> close() const extrude003 = extrude(sketch003, length = 7.5)