add filets
This commit is contained in:
@ -40,7 +40,7 @@ module assemblyInstructions () {
|
||||
|
||||
// Final builds:
|
||||
// render()
|
||||
// finalSingle();
|
||||
finalSingle();
|
||||
// finalDouble();
|
||||
|
||||
// Features:
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
include <./config.scad>
|
||||
include <../helper/screws.scad>
|
||||
include <../helper/filet.scad>
|
||||
include <../helper/slack.scad>
|
||||
include <../helper/math.scad>
|
||||
include <../helper/halfspace.scad>
|
||||
@ -8,7 +9,7 @@ include <../helper/matrix.scad>
|
||||
|
||||
include <./connector/connectors.scad>
|
||||
|
||||
*mainRail();
|
||||
mainRail();
|
||||
|
||||
module mainRail() {
|
||||
|
||||
@ -18,12 +19,15 @@ module mainRail() {
|
||||
mainRailBase();
|
||||
|
||||
module mainRailBase() {
|
||||
union() {
|
||||
frontRailSegment();
|
||||
|
||||
translate(v = [railSideMountThickness, railFrontThickness, 0])
|
||||
rotate(a = [0, 0, 90])
|
||||
sideSupportSegment();
|
||||
difference() {
|
||||
union() {
|
||||
frontRailSegment();
|
||||
|
||||
translate(v = [railSideMountThickness, railFrontThickness, 0])
|
||||
rotate(a = [0, 0, 90])
|
||||
sideSupportSegment();
|
||||
}
|
||||
}
|
||||
|
||||
module frontRailSegment() {
|
||||
@ -31,7 +35,7 @@ module mainRail() {
|
||||
cube(size = [frontFaceWidth, railFrontThickness, railTotalHeight]);
|
||||
|
||||
for (i = [1:numRailScrews]) {
|
||||
translate(v = [railScrewHoleToOuterEdge, railFrontThickness / 2, i * screwDiff + railFootThickness])
|
||||
translate(v = [railScrewHoleToOuterEdge, railFrontThickness/2, i*screwDiff+railFootThickness])
|
||||
rotate(a = [90, 0, 0])
|
||||
hexNutPocket_N(mainRailScrewType);
|
||||
}
|
||||
@ -61,6 +65,9 @@ module mainRail() {
|
||||
halfspace(vpos = [-1, -1, 0], p = [b, b, 0]);
|
||||
halfspace(vpos = [-1, 0, -1], p = [b, 0, b]);
|
||||
halfspace(vpos = [-1, 0, 1], p = [b, 0, railTotalHeight-b]);
|
||||
|
||||
cylindricalFiletNegative(p0=[frontFaceWidth, 0, 0], p1=[frontFaceWidth, 0, railTotalHeight], n=[1,-1,0], r=1);
|
||||
cylindricalFiletNegative(p0=[frontFaceWidth, railFrontThickness, railFootThickness+4], p1=[frontFaceWidth, railFrontThickness, railTotalHeight-(railFootThickness+4)], n=[1,1,0], r=1);
|
||||
}
|
||||
|
||||
children(0);
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
include <../helper/cylindricalFilet.scad>
|
||||
include <../helper/filet.scad>
|
||||
include <../helper/screws.scad>
|
||||
include <../helper/matrix.scad>
|
||||
|
||||
@ -20,14 +21,31 @@ module xBar() {
|
||||
difference() {
|
||||
cylindricalFiletEdge(xBarY, xBarX, xBarHeight, xBarRoundness);
|
||||
|
||||
translate(v = [xBarWallThickness, xBarSideThickness, xBarWallThickness])
|
||||
cylindricalFiletEdge(xBarY, xBarX-2*xBarSideThickness, xBarHeight, xBarRoundness-xBarWallThickness);
|
||||
union() {
|
||||
translate(v = [xBarWallThickness, xBarSideThickness, xBarWallThickness])
|
||||
cylindricalFiletEdge(xBarY, xBarX-2*xBarSideThickness, xBarHeight, xBarRoundness-xBarWallThickness);
|
||||
|
||||
connectorWallFiletNegative();
|
||||
|
||||
multmatrix(xBarMirrorOtherCornerTrans)
|
||||
connectorWallFiletNegative();
|
||||
}
|
||||
}
|
||||
|
||||
// Shave off bottom corners to reduce elephant's foot at where xBar and YBar join
|
||||
halfspace(vpos = [0, 1, 1], p = [0, 0.75, 0]);
|
||||
halfspace(vpos = [0, -1, 1], p = [0, xBarX-0.75, 0]);
|
||||
}
|
||||
|
||||
|
||||
module connectorWallFiletNegative() {
|
||||
cylindricalFiletNegative(
|
||||
p0=[xBarWallThickness, xBarSideThickness, xBarHeight],
|
||||
p1=[xBarY, xBarSideThickness, xBarHeight],
|
||||
n=[0, 1, 1], r=2
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user