11 basex = holedia + sidewidth*2;
12 basey = holedia + tapewidth*2;
16 bevely = bevelz * bevelslope;
27 module sheared_cube(sz, xperz, yperz) {
28 multmatrix([[1,0,xperz,0],
38 for (mir=[0,1]) mirror([0,mir,0]) {
39 translate([0, basey/2 - sidewallt, 0])
40 sheared_cube([basex, sidewallt, bevelz], 0, bevelslope);
41 cube([basex, basey/2, basebaset]);
43 linear_extrude(height=endwallt)
46 [basey/2 + bevely, bevelz],
47 [basey/2 + bevely, innerz],
51 translate([basex/2, 0, -1])
52 cylinder(r=holedia/2, h=bevelz+2);
58 for (mir=[0,1]) mirror([0,mir,0]) {
59 translate([0, basey/2 + sideslop, 0])
60 sheared_cube([lidx, sidewallt, bevelz], 0, bevelslope);
61 translate([0, basey/2 + sideslop + bevely, -tapethick])
62 cube([lidx, sidewallt, innerz + tapethick + lidt + zslop]);
63 translate([0, 0, innerz + zslop])
64 cube([lidx, basey/2 + sideslop + bevely + sidewallt, lidt]);