work on connectingBar
This commit is contained in:
@ -5,8 +5,11 @@ include <./mainRail.scad>
|
|||||||
include <./helper/sphericalFilet.scad>
|
include <./helper/sphericalFilet.scad>
|
||||||
include <./helper/cylindricalFilet.scad>
|
include <./helper/cylindricalFilet.scad>
|
||||||
|
|
||||||
|
// TODO remove support requirements
|
||||||
|
// TODO add slack to top slots
|
||||||
|
// TODO clean up
|
||||||
// TODO: How do I nicely explain this?
|
// TODO: How do I nicely explain this?
|
||||||
railSlotSpacing = 2;
|
railSlotSpacing = 3;
|
||||||
sideSpacing = 12;
|
sideSpacing = 12;
|
||||||
|
|
||||||
barDepth = maxUnitDepth + 2*railSlotSpacing;
|
barDepth = maxUnitDepth + 2*railSlotSpacing;
|
||||||
@ -39,56 +42,77 @@ module connectingBar() {
|
|||||||
cylinder(r=2, h=2);
|
cylinder(r=2, h=2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO move this to custom file
|
||||||
// negatives on the y-z plane to be imprinted on the side of the main
|
// negatives on the y-z plane to be imprinted on the side of the main
|
||||||
module sideConnector_N() {
|
module frontBarConnector_N() {
|
||||||
|
|
||||||
zOffset = 7.5;
|
y1 = 6;
|
||||||
y1 = 5;
|
|
||||||
y2 = 27;
|
y2 = 27;
|
||||||
|
z = 6;
|
||||||
|
|
||||||
translate(v=[ - m3HeatSetInsertSlotHeightSlacked, y1, zOffset])
|
translate(v = [-m3HeatSetInsertSlotHeightSlacked, y1, z])
|
||||||
rotate(a=[0,90,0])
|
rotate(a = [0, 90, 0])
|
||||||
heatSetInsertSlot_N(rackFrameScrewType);
|
heatSetInsertSlot_N(rackFrameScrewType);
|
||||||
|
|
||||||
translate(v=[ - m3HeatSetInsertSlotHeightSlacked, y2, zOffset])
|
translate(v = [-m3HeatSetInsertSlotHeightSlacked, y2, z])
|
||||||
rotate(a=[0,90,0])
|
rotate(a = [0, 90, 0])
|
||||||
heatSetInsertSlot_N(rackFrameScrewType);
|
heatSetInsertSlot_N(rackFrameScrewType);
|
||||||
|
|
||||||
translate(v=[-1, y1 + (y2 - y1)/2, zOffset])
|
// TODO fix this up, no center=true
|
||||||
|
translate(v=[-1, y1 + (y2 - y1)/2, 0])
|
||||||
cube(size=[2,10,5], center=true);
|
cube(size=[2,10,5], center=true);
|
||||||
}
|
}
|
||||||
|
|
||||||
module railConnector_N() {
|
// TODO move this in custom file, like for railFeetSlot_N
|
||||||
|
module sideWallConnector_N() {
|
||||||
|
|
||||||
|
lugW = 7;
|
||||||
|
lugD = 20;
|
||||||
|
lugH = 2;
|
||||||
|
|
||||||
|
insertDw = lugW/2;
|
||||||
|
|
||||||
|
insertDd = lugD - 4;
|
||||||
|
|
||||||
|
translate(v=[0,0, -lugH])
|
||||||
|
cube(size=[lugW, lugD, lugH]);
|
||||||
|
|
||||||
|
translate(v=[insertDw, insertDd, -(m3HeatSetInsertSlotHeightSlacked + lugH)])
|
||||||
|
heatSetInsertSlot_N(rackFrameScrewType);
|
||||||
}
|
}
|
||||||
|
|
||||||
module test() {
|
|
||||||
|
module singleCorner_N() {
|
||||||
|
union() {
|
||||||
|
translate(v=[5,5,0])
|
||||||
|
stackConn_N();
|
||||||
|
|
||||||
|
translate(v=[barWidth - (railTotalWidth + railSlotSpacing), railSlotSpacing, barHeight - railFootThickness])
|
||||||
|
railFeetSlot_N();
|
||||||
|
|
||||||
|
translate(v=[barWidth + eps, 0,0])
|
||||||
|
frontBarConnector_N();
|
||||||
|
|
||||||
|
|
||||||
|
translate(v=[barWidth - (railTotalWidth + railSlotSpacing) - 9, railSlotSpacing, barHeight])
|
||||||
|
sideWallConnector_N();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module connectingBar() {
|
||||||
difference() {
|
difference() {
|
||||||
positive();
|
positive();
|
||||||
|
|
||||||
union() {
|
singleCorner_N();
|
||||||
translate(v=[5,5,0])
|
|
||||||
stackConn_N();
|
|
||||||
|
|
||||||
translate(v=[barWidth - (railTotalWidth + railSlotSpacing), railSlotSpacing, barHeight - railFootThickness])
|
translate(v=[0,barDepth,0])
|
||||||
railFeetSlot_N();
|
mirror(v=[0,1,0]) {
|
||||||
|
singleCorner_N();
|
||||||
translate(v=[barWidth + eps, 0,0])
|
|
||||||
sideConnector_N();
|
|
||||||
|
|
||||||
// TODO change this
|
|
||||||
translate(v=[barWidth - (railTotalWidth + railSlotSpacing) - 7, railSlotSpacing, barHeight-2])
|
|
||||||
cube(size=[5,13,2]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
test();
|
connectingBar();
|
||||||
}
|
}
|
||||||
|
|
||||||
connectingBar();
|
connectingBar();
|
||||||
*intersection() {
|
|
||||||
connectingBar();
|
|
||||||
|
|
||||||
cube(size=[21,100,100]);
|
|
||||||
}
|
|
||||||
|
|||||||
Binary file not shown.
@ -90,12 +90,8 @@ module mainRail() {
|
|||||||
difference() {
|
difference() {
|
||||||
cube(size = [frontFaceWidth - railSideMountThickness, sideSupportDepth, railFootThickness]);
|
cube(size = [frontFaceWidth - railSideMountThickness, sideSupportDepth, railFootThickness]);
|
||||||
|
|
||||||
translate(v = [6, 4, 0])
|
translate(v = [5, 4, 0])
|
||||||
cylinder(r = screwRadiusSlacked(rackFrameScrewType), h = inf10, $fn = 32);
|
cylinder(r = screwRadiusSlacked(rackFrameScrewType), h = inf10, $fn = 32);
|
||||||
|
|
||||||
translate(v = [6, 12, 0])
|
|
||||||
cylinder(r = screwRadiusSlacked(rackFrameScrewType), h = inf10, $fn = 32);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -105,10 +101,7 @@ module railFeetSlot_N() {
|
|||||||
union() {
|
union() {
|
||||||
cube(size = [railTotalWidth, railTotalDepth, railFootThickness]);
|
cube(size = [railTotalWidth, railTotalDepth, railFootThickness]);
|
||||||
|
|
||||||
translate(v = [railSideMountThickness + 6, railFrontThickness + 4, -m3HeatSetInsertSlotHeightSlacked])
|
translate(v = [railSideMountThickness + 5, railFrontThickness + 4, -m3HeatSetInsertSlotHeightSlacked])
|
||||||
heatSetInsertSlot_N(rackFrameScrewType);
|
|
||||||
|
|
||||||
translate(v = [railSideMountThickness + 6, railFrontThickness + 12, -m3HeatSetInsertSlotHeightSlacked])
|
|
||||||
heatSetInsertSlot_N(rackFrameScrewType);
|
heatSetInsertSlot_N(rackFrameScrewType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,7 +5,7 @@ include <../common.scad>
|
|||||||
|
|
||||||
/********************************************************************************/
|
/********************************************************************************/
|
||||||
// M3 dimensions
|
// M3 dimensions
|
||||||
m3HoleRadiusSlack = 0.15;
|
m3HoleRadiusSlack = 0.3;
|
||||||
m3Diameter = 3.0;
|
m3Diameter = 3.0;
|
||||||
m3Radius = m3Diameter / 2.0;
|
m3Radius = m3Diameter / 2.0;
|
||||||
m3RadiusSlacked = m3Radius + m3HoleRadiusSlack;
|
m3RadiusSlacked = m3Radius + m3HoleRadiusSlack;
|
||||||
@ -14,7 +14,7 @@ m3HexNutWidthAcrossFlats = 5.41;
|
|||||||
m3HexNutWidthAcrossCorners = FtoG(m3HexNutWidthAcrossFlats);
|
m3HexNutWidthAcrossCorners = FtoG(m3HexNutWidthAcrossFlats);
|
||||||
m3HexNutThickness = 2.18;
|
m3HexNutThickness = 2.18;
|
||||||
|
|
||||||
m3HeatSetInsertSlotRadiusSlack = 0.0;
|
m3HeatSetInsertSlotRadiusSlack = -0.1;
|
||||||
m3HeatSetInsertSlotHeightSlack = 0.5;
|
m3HeatSetInsertSlotHeightSlack = 0.5;
|
||||||
|
|
||||||
m3HeatSetInsertSlotRadius = 2.5;
|
m3HeatSetInsertSlotRadius = 2.5;
|
||||||
|
|||||||
Reference in New Issue
Block a user