add/fixup hinge clearance
This commit is contained in:
@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
$fn=64;
|
$fn=64;
|
||||||
// TODO move these to math
|
// TODO move these to math
|
||||||
eps=0.00000001;
|
eps=0.00001;
|
||||||
|
|
||||||
inf10 = 10;
|
inf10 = 10;
|
||||||
inf50 = 50;
|
inf50 = 50;
|
||||||
|
|||||||
@ -4,6 +4,8 @@ include <../sharedVariables.scad>
|
|||||||
include <../../helper/halfspace.scad>
|
include <../../helper/halfspace.scad>
|
||||||
include <../../helper/screws.scad>
|
include <../../helper/screws.scad>
|
||||||
|
|
||||||
|
translate(v=[10,20,-2 - sideWallZHingeTotalClearance])
|
||||||
|
*hingeModule();
|
||||||
|
|
||||||
module hingeModule() {
|
module hingeModule() {
|
||||||
|
|
||||||
@ -13,7 +15,14 @@ module hingeModule() {
|
|||||||
|
|
||||||
module base() {
|
module base() {
|
||||||
intersection() {
|
intersection() {
|
||||||
cube(size = [sideWallConnW, sideWallConnD, sideWallConnLugDepression]);
|
|
||||||
|
union() {
|
||||||
|
cube(size = [sideWallConnW, sideWallConnD, sideWallConnLugDepression]);
|
||||||
|
|
||||||
|
// Riser to enforce side wall hinge clearance
|
||||||
|
translate(v = [0, 0, sideWallConnLugDepression])
|
||||||
|
cube(size = [sideWallConnW, sideWallConnD - 12, sideWallZGapClearance]);
|
||||||
|
}
|
||||||
|
|
||||||
// TODO: pattern for this? beef up mirror4XY?
|
// TODO: pattern for this? beef up mirror4XY?
|
||||||
cVal = 0.5;
|
cVal = 0.5;
|
||||||
|
|||||||
@ -6,6 +6,9 @@ include <../../helper/halfspace.scad>
|
|||||||
include <../../misc/magnet.scad>
|
include <../../misc/magnet.scad>
|
||||||
include <../../helper/screws.scad>
|
include <../../helper/screws.scad>
|
||||||
|
|
||||||
|
translate(v=[10,-5,-(2+sideWallZHingeTotalClearance)])
|
||||||
|
*magnetModule();
|
||||||
|
|
||||||
module magnetModule() {
|
module magnetModule() {
|
||||||
|
|
||||||
applyYBarScrewMount()
|
applyYBarScrewMount()
|
||||||
@ -66,5 +69,4 @@ module magnetModule() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -37,7 +37,7 @@ module sideWallBase() {
|
|||||||
roundThingHelper(sideWallX,sideWallY,sideWallZ, baseRoundness);
|
roundThingHelper(sideWallX,sideWallY,sideWallZ, baseRoundness);
|
||||||
|
|
||||||
translate(v=[sideWallThickness, sideWallThickness,0])
|
translate(v=[sideWallThickness, sideWallThickness,0])
|
||||||
roundThingHelper(sideWallX,sideWallY - 2*sideWallThickness,sideWallZ, baseRoundness);
|
roundThingHelper(sideWallX,sideWallY - 2*sideWallThickness, sideWallZ, baseRoundness);
|
||||||
}
|
}
|
||||||
|
|
||||||
halfspace(vpos=[-1,0,0], p=[sideWallX,0,0]);
|
halfspace(vpos=[-1,0,0], p=[sideWallX,0,0]);
|
||||||
@ -87,10 +87,10 @@ module sideWallBase() {
|
|||||||
module applyMagnetConnector() {
|
module applyMagnetConnector() {
|
||||||
apply_p() {
|
apply_p() {
|
||||||
union() {
|
union() {
|
||||||
translate(v = [sideWallThickness, magnetMountToYBarFront, magnetMountToYBarTop])
|
translate(v = [sideWallThickness, magnetMountToYBarFront, magnetMountToYBarTop - sideWallZHingeTotalClearance])
|
||||||
sideWallMagnetMountRotated();
|
sideWallMagnetMountRotated();
|
||||||
|
|
||||||
translate(v = [sideWallThickness, magnetMountToYBarFront, sideWallZ - magnetMountToYBarTop])
|
translate(v = [sideWallThickness, magnetMountToYBarFront, sideWallZ - (magnetMountToYBarTop- sideWallZHingeTotalClearance)])
|
||||||
sideWallMagnetMountRotated();
|
sideWallMagnetMountRotated();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,7 @@ include <../../misc/magnet.scad>
|
|||||||
module sideWallMagnetMount() {
|
module sideWallMagnetMount() {
|
||||||
// oriented so that the xy face is the side wall's inner face
|
// oriented so that the xy face is the side wall's inner face
|
||||||
difference() {
|
difference() {
|
||||||
cylinder(r1 = magnetMountShellRadius+0.5, r2 = magnetMountShellRadius, h = innerSideWallToYBarMagnetConn);
|
cylinder(r1 = magnetMountShellRadius+1, r2 = magnetMountShellRadius, h = innerSideWallToYBarMagnetConn);
|
||||||
|
|
||||||
translate(v=[0, 0, innerSideWallToYBarMagnetConn-magnetHSlacked])
|
translate(v=[0, 0, innerSideWallToYBarMagnetConn-magnetHSlacked])
|
||||||
cylinder(r = magnetRSlacked, h = magnetHSlacked);
|
cylinder(r = magnetRSlacked, h = magnetHSlacked);
|
||||||
|
|||||||
@ -16,9 +16,6 @@ magnetMountShellRadius = magnetRSlacked + 1;
|
|||||||
|
|
||||||
innerSideWallToYBarMagnetConn = magnetFaceToSideWallConnOuterYEdge + sideWallSlotToOuterYEdge - sideWallThickness;
|
innerSideWallToYBarMagnetConn = magnetFaceToSideWallConnOuterYEdge + sideWallSlotToOuterYEdge - sideWallThickness;
|
||||||
|
|
||||||
magnetMountToYBarTop = magnetMountShellRadius + 1;
|
|
||||||
magnetMountToYBarFront = magnetMountShellRadius + sideWallSlotToXZ + 2;
|
|
||||||
|
|
||||||
hingePoleR = 2;
|
hingePoleR = 2;
|
||||||
hingePoleH = 5;
|
hingePoleH = 5;
|
||||||
hingeHoleR = hingePoleR + 0.2;
|
hingeHoleR = hingePoleR + 0.2;
|
||||||
@ -26,11 +23,16 @@ hingeHoleR = hingePoleR + 0.2;
|
|||||||
hingePoleToConnectorOuterYZFace = hingePoleR/2;
|
hingePoleToConnectorOuterYZFace = hingePoleR/2;
|
||||||
hingePoleToConnectorOuterXZFace = hingePoleR/2;
|
hingePoleToConnectorOuterXZFace = hingePoleR/2;
|
||||||
|
|
||||||
sideWallZGapClearance = 0.2;
|
|
||||||
sideWallZ = railTotalHeight - 2*(railFootThickness + sideWallZGapClearance);
|
|
||||||
|
|
||||||
|
sideWallZHingeSlack = 0.3;
|
||||||
|
sideWallZGapClearance = 1.0;
|
||||||
|
sideWallZHingeTotalClearance = sideWallZHingeSlack + sideWallZGapClearance;
|
||||||
|
sideWallZ = (railTotalHeight - 2*railFootThickness) - 2*sideWallZHingeTotalClearance;
|
||||||
sideWallY = yBarDepth;
|
sideWallY = yBarDepth;
|
||||||
|
|
||||||
|
magnetMountToYBarTop = magnetMountShellRadius + sideWallZHingeTotalClearance + 1;
|
||||||
|
magnetMountToYBarFront = magnetMountShellRadius + sideWallSlotToXZ + 2;
|
||||||
|
|
||||||
sideWallXGapClearance = 0.2;
|
sideWallXGapClearance = 0.2;
|
||||||
sideWallX = (yBarWidth-(railTotalWidth+railSlotToInnerYEdge)) - sideWallXGapClearance;
|
sideWallX = (yBarWidth-(railTotalWidth+railSlotToInnerYEdge)) - sideWallXGapClearance;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user