diff --git a/rack/sharedVariables.scad b/rack/sharedVariables.scad index 9d16d6e..bae3d70 100644 --- a/rack/sharedVariables.scad +++ b/rack/sharedVariables.scad @@ -1,3 +1,4 @@ sideWallThickness = 2.5; sideWallSlotToOuterYEdge = 3; +sideWallSlotToOuterXEdge = 3; // TODO rename to variables found in ybar; \ No newline at end of file diff --git a/rack/sideWall.scad b/rack/sideWall.scad index 8435684..e4d6746 100644 --- a/rack/sideWall.scad +++ b/rack/sideWall.scad @@ -11,9 +11,17 @@ sideWallZ = 110; sideWallY = 110; sideWallX = 12; +sideWallZGapClearance = 0.2; + + +// make these global +hingePoleToInnerSideWallX = (hingePoleToConnectorOuterYZFace + sideWallSlotToOuterYEdge) - sideWallThickness; +hingePoleToInnerSideWallY = (hingePoleToConnectorOuterXZFace + sideWallSlotToOuterXEdge) - sideWallThickness; + module sideWall() { + applyHingeConnector() applyMagnetConnector() sideWallBase(); @@ -45,6 +53,34 @@ module sideWall() { module applyHingeConnector() { + hingeHolePositiveRad = hingeHoleR+1; + + module hingeProjectConstructionPlane() { + translate(v=[sideWallX-(sideWallThickness+hingePoleToInnerSideWallX) - hingeHolePositiveRad,sideWallY,0]) + cube(size=[2*hingeHolePositiveRad, eps, sideWallZ]); + } + + apply_pn() { + + hull() { + translate(v = [sideWallX-(sideWallThickness+hingePoleToInnerSideWallX), sideWallY-(sideWallThickness+ + hingePoleToInnerSideWallY), 0]) + cylinder(r = hingeHoleR+1, h = sideWallZ); + + hingeProjectConstructionPlane(); + } + + union() { + translate(v = [sideWallX-(sideWallThickness+hingePoleToInnerSideWallX), sideWallY-(sideWallThickness+ + hingePoleToInnerSideWallY), 0]) + cylinder(r = hingeHoleR, h = sideWallZ); + + // TODO annoying constant + halfspace(p=[sideWallX-3.3, sideWallY, 0], vpos=[1,1,0]); + } + + children(0); + } } module applyMagnetConnector() { @@ -63,4 +99,5 @@ module sideWall() { } } -sideWall(); \ No newline at end of file +sideWall(); + diff --git a/rack/sideWallConnector.scad b/rack/sideWallConnector.scad index ff9376d..df3261b 100644 --- a/rack/sideWallConnector.scad +++ b/rack/sideWallConnector.scad @@ -19,11 +19,17 @@ magnetMountExtraRadius = magnetRSlacked + 1; innerSideWallToYBarMagnetConn = magnetFaceToSideWallConnOuterYEdge + sideWallSlotToOuterYEdge - sideWallThickness; -hingePoleR = 2.5; -hingePoleH = 3; -hingeHoleR = hingePoleR + 0.5; +hingePoleR = 2; +hingePoleH = 5; +hingeHoleR = hingePoleR + 0.2; hingePoleToConnectorOuterYZFace = hingePoleR/2; +hingePoleToConnectorOuterXZFace = hingePoleR/2; + +*sideWallConnector_N(); +*sideWallConnectorMagnet(); +*sideWallConnectorMagnetSide(); +*sideWallConnectorHinge(); module sideWallConnector_N() { translate(v = [0, 0, -sideWallConnLugDepression]) @@ -134,9 +140,3 @@ module sideWallConnectorMagnetSide() { cylinder(r = magnetRSlacked, h = magnetHSlacked); } } -*sideWallConnector_N(); -*sideWallConnectorMagnet(); -*sideWallConnectorMagnetSide(); -sideWallConnectorHinge(); - -//counterSunkHead_N(rackFrameScrewType,screwExtension=10);