add dowel

This commit is contained in:
zhao
2023-04-14 23:29:25 -04:00
parent 98d148a784
commit 8212737dd9
17 changed files with 105179 additions and 105329 deletions

View File

@ -7,9 +7,6 @@ include <../../helper/screws.scad>
translate(v=[10,20,-2 - sideWallZHingeTotalClearance])
*hingeModule();
// TODO this is pretty weak
module hingeModule() {
applyHingePole()
@ -32,19 +29,32 @@ module hingeModule() {
cube(size = [connW, connD - 12, sideWallZGapClearance]);
}
// TODO: pattern for this? beef up mirror4XY?
cVal = 0.5;
halfspace(p=[0,cVal,0], vpos=[0,1,1]);
halfspace(p=[cVal,0,0], vpos=[1,0,1]);
halfspace(p=[connW-cVal,0,0], vpos=[-1,0,1]);
halfspace(p=[0,connD-cVal,0], vpos=[0,-1,1]);
union() {
// don't bevel the part around the dowel pin hole
*cube(size = [connW, 2*(hingePoleR+radiusXYSlack) , sideWallConnLugDepression + sideWallZGapClearance]);
// TODO: pattern for this? beef up mirror4XY?
intersection() {
cVal = 0.25;
halfspace(p = [0, cVal, 0], vpos = [0, 1, 1]);
halfspace(p = [cVal, 0, 0], vpos = [1, 0, 1]);
halfspace(p = [connW-cVal, 0, 0], vpos = [-1, 0, 1]);
halfspace(p = [0, connD-cVal, 0], vpos = [0, -1, 1]);
}
}
}
}
module applyHingePole() {
apply_p() {
translate(v = [sideWallConnW/2.0, hingePoleR, sideWallConnH])
cylinder(r = hingePoleR, h = hingePoleH);
apply_n() {
union() {
translate(v = [sideWallConnW/2.0, hingePoleR + radiusXYSlack, 0])
cylinder(r = hingePoleR + radiusXYSlack, h = inf50);
translate(v = [sideWallConnW/2.0, , 0])
cube(size=[2, 5, inf50], center=true);
}
children(0);
}