// -*- C -*-
+//$fs=0.1;
+//$fa=3;
+$fs=0.2;
+$fa=6;
+
rearwallthick = 3;
-basethick = 3;
+basethick = 2;
mainframeendthick = 2.5;
-tubedia=16;
+tubedia = 16 + 0.8;
tubetubethick=2;
tubetubetopslop=1;
boltholedia = 6.5 + 0.5;
boltholeslotshorter = 6;
-mainframeholedia = 5 + 0.5;
+mainframeholedia = 5 + 1.0;
// "slot" refers to the things in the base of the drill press stand
-backslotedgespace = 71;
-slotwidth = 11.5;
+backslotedgespace = 59;
+slotwidth = 11.5 - 0.5;
backslotmid2screwhole = 17;
slotplugheight = 5.5;
-slotplugdepth = 10;
+slotplugshorterlen =10;
+slotpluglongerlen = 20;
+
+//slotslope = 11.0 / 18.5;
+slotslope = 1 / tan(51);
// "keepslot" refers to the screws in the wooden jig block
keepslotstartz = 20;
-keepslotlen = 25;
+keepslotlen = 18;
keepslotx = backslotedgespace / 2;
keepslotwidth = 4;
-mainframeextraside = 15;
-mainframeextrafront = 25;
+mainframeextraside = 12;
+mainframeextrafront = 15;
rearwallstrengthwidth = 10;
keepslotclear = 10;
// computed values
-mainframeholex = backslotedgespace/2 + slotwidth/sqrt(2) +
- backslotmid2screwhole / sqrt(2);
+slotslopediag = sqrt(1 + slotslope*slotslope);
+slotwidthx = slotwidth * slotslopediag;
+
+slotxperlen = slotslope / slotslopediag;
+slotyperlen = 1 / slotslopediag;
+
+mainframeholex = backslotedgespace/2 + slotpluglongerlen * slotxperlen
+ + 0.5 * slotwidth * slotyperlen;
-mainframeholey = -backslotmid2screwhole / sqrt(2);
+mainframeholey = -slotpluglongerlen * slotyperlen
+ + 0.5 * slotwidth * slotxperlen;
mainframemaxx = mainframeholex + mainframeextraside;
mainframeminy = mainframeholey - mainframeextrafront;
translate([-1, -rearwallthick, 0])
cube([mainframemaxx+1, rearwallthick, mainframemaxz]);
- for (x=[keepslotx - keepslotclear, mainframemaxx]) {
+ for (x=[keepslotx - keepslotclear, mainframemaxx - 0.5]) {
translate([x,0,0])
rotate([90,0,-90])
linear_extrude(height=mainframeendthick)
mirror([0,0,1])
linear_extrude(height=slotplugheight+1)
polygon([[0,0],
- [slotwidth * sqrt(2), 0],
- [slotplugdepth / sqrt(2) + slotwidth * sqrt(2),
- -slotplugdepth],
- [slotplugdepth / sqrt(2), -slotplugdepth]]);
+ [slotwidthx, 0],
+ [slotwidthx + slotplugshorterlen * slotxperlen,
+ -slotplugshorterlen * slotyperlen],
+ [slotpluglongerlen * slotxperlen,
+ -slotpluglongerlen * slotyperlen]]);
translate([-1,
-rearwallthick - boltholeslotshorter + 0.2,
tubedia + tubetubetopslop + tubetubethick + 4])