more case panel fastening work
This commit is contained in:
@@ -64,15 +64,15 @@ module case_bottom(case_design) {
|
||||
}
|
||||
if(case_design == "panel_nas") {
|
||||
union() {
|
||||
translate([-gap,-2*wallthick,0])
|
||||
cube([width-2*(gap+sidethick),depth-wallthick,wallthick]);
|
||||
#translate([-gap-sidethick+(2*adj),depth-(3*wallthick)-gap-adj-20,0])
|
||||
translate([-gap,-wallthick,0])
|
||||
cube([width-2*(gap+sidethick),depth-(2*wallthick),wallthick]);
|
||||
translate([-gap-sidethick-(2*adj),depth-(3*wallthick)-gap-adj-20,0])
|
||||
cube([sidethick+(2*adj),10,floorthick]);
|
||||
#translate([width-(3*sidethick)-adj,depth-(3*wallthick)-gap-adj-20,0])
|
||||
translate([width-(3*sidethick)-adj,depth-(3*wallthick)-gap-adj-20,0])
|
||||
cube([sidethick+2*adj,10,floorthick]);
|
||||
#translate([-gap-sidethick+(2*adj),40-wallthick-gap+adj,0])
|
||||
translate([-gap-sidethick-(2*adj),40-wallthick-gap+adj,0])
|
||||
cube([sidethick+2*adj,10,floorthick]);
|
||||
#translate([width-(3*sidethick)-adj,40-wallthick-gap+adj,0])
|
||||
translate([width-(3*sidethick)-adj,40-wallthick-gap+adj,0])
|
||||
cube([sidethick+2*adj,10,floorthick]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -132,8 +132,8 @@ module case_side(case_design, side) {
|
||||
if(side == "rear") {
|
||||
difference() {
|
||||
union() {
|
||||
translate([-gap,-(2*wallthick),floorthick])
|
||||
cube([width-2*sidethick,wallthick,case_z-2*wallthick]);
|
||||
translate([-gap,-(2*wallthick),0])
|
||||
cube([width-2*sidethick,wallthick,case_z-wallthick]);
|
||||
// bottom right tab
|
||||
translate([width-(3*sidethick)-adj,-(2*wallthick),20])
|
||||
cube([sidethick+(2*adj),wallthick,10]);
|
||||
@@ -182,8 +182,8 @@ module case_side(case_design, side) {
|
||||
}
|
||||
if(side == "right") {
|
||||
difference() {
|
||||
translate([width-2*sidethick,-(3*wallthick)-gap,-wallthick])
|
||||
rotate([0,-90,0]) slab([case_z+(2*wallthick),depth+2*wallthick,sidethick],corner_fillet);
|
||||
translate([width-2*sidethick,-(3*wallthick)-gap,-2*wallthick])
|
||||
rotate([0,-90,0]) slab([case_z+(3*wallthick),depth+2*wallthick,sidethick],corner_fillet);
|
||||
// rear edge top tab openings
|
||||
translate([width-adj-(3*sidethick),-2*wallthick,case_z-30])
|
||||
cube([sidethick+2*adj,wallthick+tol,20]);
|
||||
@@ -211,26 +211,40 @@ module case_side(case_design, side) {
|
||||
rotate([0,0,0]) hd_holes(3.5, "portrait", "both", sidethick+2);
|
||||
}
|
||||
|
||||
// top edge front tab openings
|
||||
// top edge front tab opening
|
||||
translate([width-(3*sidethick)-adj,depth-(3*wallthick)-gap-adj-30,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+(2*adj),20,floorthick+tol]);
|
||||
translate([width-(3*sidethick)-adj,depth-(3*wallthick)-gap-adj-30,
|
||||
translate([width-(3*sidethick)-adj,depth-(3*wallthick)-gap-adj-30-tol,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+2*adj,10+tol,(3*floorthick)+adj]);
|
||||
// top edge rear tab openings
|
||||
|
||||
// top edge rear tab opening
|
||||
translate([width-(3*sidethick)-adj,40-wallthick-gap+adj,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+(2*adj),10,floorthick+tol]);
|
||||
translate([width-(3*sidethick)-adj,30-wallthick-gap+adj,
|
||||
translate([width-(3*sidethick)-adj,30-wallthick-gap+adj-tol,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+(2*adj),10+tol,(3*floorthick)+adj]);
|
||||
|
||||
// bottom edge front tab opening
|
||||
translate([width-(3*sidethick)-adj,depth-(3*wallthick)-gap-adj-30-tol,-tol])
|
||||
cube([sidethick+2*adj,20+tol,floorthick+tol]);
|
||||
translate([width-(3*sidethick)-adj,depth-(3*wallthick)-gap-adj-30-tol,-(3*floorthick)+adj])
|
||||
cube([sidethick+2*adj,10+tol,(3*floorthick)+adj]);
|
||||
|
||||
// bottom edge rear tab opening
|
||||
translate([width-(3*sidethick)-adj,30-wallthick-gap+adj-tol,-tol])
|
||||
cube([sidethick+2*adj,20+tol,floorthick+tol]);
|
||||
translate([width-(3*sidethick)-adj,30-wallthick-gap+adj-tol,-(3*floorthick)+adj])
|
||||
cube([sidethick+(2*adj),10+tol,(3*floorthick)+adj]);
|
||||
|
||||
}
|
||||
}
|
||||
if(side == "left") {
|
||||
difference() {
|
||||
translate([-gap,-(3*wallthick)-gap,-wallthick])
|
||||
rotate([0,-90,0]) slab([case_z+(2*wallthick),depth+(2*wallthick),sidethick],corner_fillet);
|
||||
translate([-gap,-(3*wallthick)-gap,-2*wallthick])
|
||||
rotate([0,-90,0]) slab([case_z+(3*wallthick),depth+(2*wallthick),sidethick],corner_fillet);
|
||||
// rear edge top tab openings
|
||||
translate([-sidethick-gap-adj,-2*wallthick,case_z-30])
|
||||
cube([sidethick+2*adj,wallthick+tol,20]);
|
||||
@@ -262,17 +276,29 @@ module case_side(case_design, side) {
|
||||
translate([-gap-sidethick-adj,depth-(3*wallthick)-gap-adj-30,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+(2*adj),20,floorthick+tol]);
|
||||
translate([-gap-sidethick-adj,depth-(3*wallthick)-gap-adj-30,
|
||||
translate([-gap-sidethick-adj,depth-(3*wallthick)-gap-adj-30-tol,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+(2*adj),10+tol,(3*floorthick)+adj]);
|
||||
// top edge rear tab openings
|
||||
translate([-gap-sidethick-adj,40-wallthick-gap+adj,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+(2*adj),10,floorthick+tol]);
|
||||
translate([-gap-sidethick-adj,30-wallthick-gap+adj,
|
||||
translate([-gap-sidethick-adj,30-wallthick-gap+adj-tol,
|
||||
case_z-(2*floorthick)])
|
||||
cube([sidethick+(2*adj),10+tol,(3*floorthick)+adj]);
|
||||
|
||||
// bottom edge front tab openings
|
||||
translate([-gap-sidethick-adj,depth-(3*wallthick)-gap-adj-30,-tol])
|
||||
cube([sidethick+(2*adj),20,floorthick+tol]);
|
||||
translate([-gap-sidethick-adj,depth-(3*wallthick)-gap-adj-30-tol,-(2*floorthick)-adj])
|
||||
cube([sidethick+(2*adj),10+tol,(3*floorthick)+adj]);
|
||||
|
||||
// bottom edge rear tab openings
|
||||
translate([-gap-sidethick-adj,30-wallthick-gap+adj,-tol])
|
||||
cube([sidethick+(2*adj),20,floorthick+tol]);
|
||||
translate([-gap-sidethick-adj,30-wallthick-gap+adj-tol,-(2*floorthick)-adj])
|
||||
cube([sidethick+(2*adj),10+tol,(3*floorthick)+adj]);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9748,7 +9748,7 @@
|
||||
"multipcb_top_standoffs": "false",
|
||||
"nas_sbc_location": "top",
|
||||
"pcb_loc_x": "8",
|
||||
"pcb_loc_y": "0",
|
||||
"pcb_loc_y": "1",
|
||||
"pcb_loc_z": "0",
|
||||
"raise_top": "0",
|
||||
"rear_cooling": "fan_hex",
|
||||
|
||||
@@ -644,7 +644,7 @@ if (view == "model") {
|
||||
}
|
||||
if(case_design == "panel_nas") {
|
||||
if(lower_bottom >= 0) {
|
||||
color("dimgrey",1) translate([0,0,-lower_bottom]) case_bottom(case_design);
|
||||
color("grey",1) translate([0,0,-lower_bottom]) case_bottom(case_design);
|
||||
}
|
||||
if(raise_top >= 0) {
|
||||
color("grey",1) translate([0,0,raise_top])case_top(case_design);
|
||||
@@ -1042,7 +1042,7 @@ if(case_design == "tray" || case_design == "tray_vu5" || case_design == "tray_vu
|
||||
}
|
||||
else {
|
||||
if(case_design == "panel_nas") {
|
||||
echo(width=width+(101.6-width+(2*sidethick)),depth=depth,top=top_height,bottom=bottom_height, height=case_z+(2*wallthick));
|
||||
echo(width=width+(101.6-width+(2*sidethick)),depth=depth,top=top_height,bottom=bottom_height, height=case_z+(3*wallthick));
|
||||
}
|
||||
else {
|
||||
echo(width=width,depth=depth,top=top_height,bottom=bottom_height);
|
||||
|
||||
Reference in New Issue
Block a user