add option to center patch panel
This commit is contained in:
@ -8,15 +8,21 @@ use <../plateBase.scad>
|
||||
Please also make sure that the correct rack frame preset is set in rackFrame.scad.
|
||||
*/
|
||||
|
||||
module patchPanel (slots=8, plateThickness=3, keystoneSpacing=19) {
|
||||
module patchPanel (slots=8, plateThickness=3, keystoneSpacing=19, center=false) {
|
||||
difference() {
|
||||
supportPlateThickness = 5.9;
|
||||
supportPlateHeight = 29;
|
||||
supportPlateEdgeSpacing = 3;
|
||||
supportPlateWidth = slots * keystoneSpacing + supportPlateEdgeSpacing;
|
||||
supportPlateMinPadding = railScrewHoleToInnerEdge+4;
|
||||
|
||||
leftRailScrewToSupportDx = railScrewHoleToInnerEdge+4;
|
||||
// TODO: these values should belong somewhere closer to plateBase.scad
|
||||
railScrewToEdge = 4.5;
|
||||
plateLength = rackMountScrewWidth + 2*railScrewToEdge;
|
||||
|
||||
leftRailScrewToSupportDx = center
|
||||
? (plateLength-(supportPlateWidth+supportPlateMinPadding))/2
|
||||
: supportPlateMinPadding;
|
||||
|
||||
union() {
|
||||
plateBase(U = 2, plateThickness = plateThickness, screwType = mainRailScrewType, screwToXEdge=railScrewToEdge, screwToYEdge=railScrewToEdge, filletR = 2);
|
||||
@ -24,6 +30,7 @@ module patchPanel (slots=8, plateThickness=3, keystoneSpacing=19) {
|
||||
cube(size = [supportPlateWidth, supportPlateHeight, supportPlateThickness]);
|
||||
}
|
||||
|
||||
render()
|
||||
union() {
|
||||
for (i = [0:slots-1]) {
|
||||
translate(v = [leftRailScrewToSupportDx+supportPlateEdgeSpacing + i*keystoneSpacing, 0, eps])
|
||||
@ -32,4 +39,4 @@ module patchPanel (slots=8, plateThickness=3, keystoneSpacing=19) {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user