more wip for panel_nas case
This commit is contained in:
@@ -26,6 +26,9 @@
|
||||
|
||||
module case_side(case_design, side) {
|
||||
|
||||
hd_space = 36;
|
||||
hd_height = 40;
|
||||
|
||||
difference() {
|
||||
union() {
|
||||
if(case_design == "panel") {
|
||||
@@ -132,14 +135,14 @@ module case_side(case_design, side) {
|
||||
if(side == "rear") {
|
||||
difference() {
|
||||
union() {
|
||||
translate([-gap,-wallthick-gap,-floorthick])
|
||||
cube([width-2*wallthick+(101.6-width+(2*(wallthick+gap))),wallthick,case_z+2*floorthick]);
|
||||
translate([-gap,-wallthick-gap,floorthick])
|
||||
cube([width-2*wallthick+(101.6-width+(2*wallthick)),wallthick,case_z-2*floorthick]);
|
||||
// right hook
|
||||
difference() {
|
||||
translate([width-(2*wallthick)-gap-adj,-wallthick-gap,
|
||||
translate([width-(2*wallthick)-gap-adj+(101.6-width+(2*wallthick)),-wallthick-gap,
|
||||
((case_z)/2)-4])
|
||||
cube([(2*wallthick)+.5,wallthick,8]);
|
||||
translate([width-(2*wallthick)-gap-adj,-wallthick-gap-adj,
|
||||
translate([width-(2*wallthick)-gap-adj+(101.6-width+(2*wallthick)),-wallthick-gap-adj,
|
||||
((case_z)/2)-4-adj])
|
||||
cube([wallthick+.25,wallthick+(2*adj),4.25]);
|
||||
}
|
||||
@@ -165,28 +168,30 @@ module case_side(case_design, side) {
|
||||
cube([8.5,wallthick+2*adj,floorthick+.5]);
|
||||
translate([width-(width*(1/5))-(wallthick+gap)-.25,-wallthick-gap-adj,-.25])
|
||||
cube([8.5,wallthick+2*adj,floorthick+.5]);
|
||||
translate([(101.6-80)/2,-1,bottom_height+98]) rotate([90,0,0]) fan_mask(80, wallthick+2, "fan_hex");
|
||||
translate([(101.6-80)/2,-1,bottom_height+17]) rotate([90,0,0]) fan_mask(80, wallthick+2, "fan_hex");
|
||||
}
|
||||
}
|
||||
if(side == "front") {
|
||||
difference() {
|
||||
union() {
|
||||
translate([-gap,depth-2*(wallthick)-gap,-floorthick])
|
||||
cube([width-2*wallthick+(101.6-width+(2*(wallthick+gap))),wallthick,case_z+2*floorthick]);
|
||||
translate([-gap,depth-4*(wallthick)-gap,floorthick])
|
||||
cube([width-2*wallthick+(101.6-width+(2*wallthick)),wallthick,case_z-2*wallthick]);
|
||||
// right hook
|
||||
difference() {
|
||||
translate([width-(2*wallthick)-gap-adj,depth-2*(wallthick)-gap-adj,
|
||||
translate([width-(2*wallthick)-gap-adj+(101.6-width+(2*wallthick)),depth-3*(wallthick)-gap-adj,
|
||||
((case_z)/2)-4])
|
||||
cube([(2*wallthick)+.5,wallthick,8]);
|
||||
translate([width-(2*wallthick)-gap-adj,
|
||||
depth-2*(wallthick)-adj-gap-adj,((case_z)/2)-4-adj])
|
||||
translate([width-(2*wallthick)-gap-adj+(101.6-width+(2*wallthick)),
|
||||
depth-3*(wallthick)-adj-gap-adj,((case_z)/2)-4-adj])
|
||||
cube([wallthick+.25,wallthick+(2*adj),4.25]);
|
||||
}
|
||||
// left hook
|
||||
difference() {
|
||||
translate([-(2*wallthick)-gap-adj-.25,depth-2*(wallthick)-gap-adj,(
|
||||
translate([-(2*wallthick)-gap-adj-.25,depth-3*(wallthick)-gap-adj,(
|
||||
(case_z)/2)-4])
|
||||
cube([(2*wallthick)+.5,wallthick,8]);
|
||||
translate([-wallthick-gap-adj-.25,depth-2*(wallthick)-adj-gap-adj,
|
||||
translate([-wallthick-gap-adj-.25,depth-3*(wallthick)-adj-gap-adj,
|
||||
((case_z)/2)-4-adj])
|
||||
cube([wallthick+.25,wallthick+(2*adj),4.25]);
|
||||
}
|
||||
@@ -203,28 +208,42 @@ module case_side(case_design, side) {
|
||||
cube([8.5,wallthick+2*adj,floorthick+.5]);
|
||||
translate([width-(width*(1/5))-(wallthick+gap)-.25,
|
||||
depth-2*wallthick-gap-adj,-.25]) cube([8.5,wallthick+2*adj,floorthick+.5]);
|
||||
translate([-gap+6,depth-4*(wallthick)-gap,case_z-6]) rotate([-90,0,0])
|
||||
vent_hex((width)/3.5,(depth)/7,wallthick+4,5,1.5,"horizontal");
|
||||
}
|
||||
}
|
||||
if(side == "right") {
|
||||
difference() {
|
||||
translate([width-(2*wallthick)-gap+(101.6-width+(2*wallthick)),-(2*wallthick)-gap,-wallthick])
|
||||
cube([wallthick,depth+2*wallthick,case_z+(2*wallthick)]);
|
||||
translate([width-(2*wallthick)-gap-adj,-wallthick-gap-.25,
|
||||
// translate([width-(2*wallthick)-gap+(101.6-width+(2*wallthick)),-(3*wallthick)-gap,-wallthick])
|
||||
// cube([wallthick,depth+2*wallthick,case_z+(2*wallthick)]);
|
||||
translate([width-gap+(101.6-width+sidethick),-(3*wallthick)-gap,-wallthick])
|
||||
rotate([0,-90,0]) slab([case_z+(2*wallthick),depth+2*wallthick,sidethick],corner_fillet);
|
||||
translate([width-(2*wallthick)-gap-adj+(101.6-width+(2*wallthick)),-wallthick-gap-.25,
|
||||
((case_z)/2)]) cube([wallthick+2*adj,wallthick+.5,8.5]);
|
||||
translate([width-(2*wallthick)-gap-adj,depth-2*(wallthick)-gap-.25,
|
||||
translate([width-(2*wallthick)-gap-adj+(101.6-width+(2*wallthick)),depth-2*(wallthick)-gap-.25,
|
||||
((case_z)/2)])
|
||||
cube([wallthick+2*adj,wallthick+.5,8.5]);
|
||||
for( i=[0:1:nas_bays-1]) {
|
||||
translate([-gap,-(3*wallthick)-gap+78.25,hd_height+hd_space*i])
|
||||
rotate([0,0,0]) hd_holes(3.5, "portrait", "both", sidethick+2);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(side == "left") {
|
||||
difference() {
|
||||
translate([-wallthick-gap,-(2*wallthick)-gap,-wallthick])
|
||||
cube([wallthick,depth+2*wallthick,case_z+(2*wallthick)]);
|
||||
// translate([-sidethick-gap,-(2*wallthick)-gap,-wallthick])
|
||||
// cube([wallthick,depth+2*wallthick,case_z+(2*wallthick)]);
|
||||
translate([-gap,-(3*wallthick)-gap,-wallthick])
|
||||
rotate([0,-90,0]) slab([case_z+(2*wallthick),depth+2*wallthick,sidethick],corner_fillet);
|
||||
translate([-wallthick-gap-adj,-wallthick-gap-.25,((case_z)/2)])
|
||||
cube([wallthick+2*adj,wallthick+.5,8.5]);
|
||||
translate([-wallthick-gap-adj,depth-2*(wallthick)-gap-.25,
|
||||
((case_z)/2)])
|
||||
cube([wallthick+2*adj,wallthick+.5,8.5]);
|
||||
for( i=[0:1:nas_bays-1]) {
|
||||
translate([-gap,-(3*wallthick)-gap+78.25,hd_height+hd_space*i])
|
||||
rotate([0,0,0]) hd_holes(3.5, "portrait", "both", sidethick+2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -72,9 +72,9 @@ module case_top(case_design) {
|
||||
}
|
||||
if(case_design == "panel_nas") {
|
||||
union() {
|
||||
translate([-gap,-gap,case_z-floorthick])
|
||||
cube([width-(2*wallthick)+(101.6-width+(2*wallthick)),depth-(2*wallthick),floorthick]);
|
||||
translate([(width*(1/5))-8-(wallthick+gap),depth-(2*wallthick)-gap-adj,
|
||||
translate([-gap,-gap,case_z-2*wallthick])
|
||||
cube([width-(2*wallthick)+(101.6-width+(2*wallthick)),depth-(3*wallthick),wallthick]);
|
||||
/* translate([(width*(1/5))-8-(wallthick+gap),depth-(2*wallthick)-gap-adj,
|
||||
case_z-floorthick])
|
||||
cube([8,wallthick+2*adj,floorthick]);
|
||||
translate([width-(width*(1/5))-(wallthick+gap),depth-(2*wallthick)-gap-adj,
|
||||
@@ -86,7 +86,7 @@ module case_top(case_design) {
|
||||
translate([width-(width*(1/5))-(wallthick+gap),-wallthick-gap+adj,
|
||||
case_z-floorthick])
|
||||
cube([8,wallthick+2*adj,floorthick]);
|
||||
}
|
||||
*/ }
|
||||
}
|
||||
if(case_design == "stacked") {
|
||||
translate([(width/2)-wallthick-gap,(depth/2)-wallthick-gap,
|
||||
|
||||
@@ -9623,11 +9623,11 @@
|
||||
"bottom_standoff_type": "countersunk",
|
||||
"case_design": "panel_nas",
|
||||
"case_offset_bz": "0",
|
||||
"case_offset_tz": "171",
|
||||
"case_offset_tz": "165",
|
||||
"case_offset_x": "0",
|
||||
"case_offset_y": "138",
|
||||
"cooling": "default",
|
||||
"corner_fillet": "3",
|
||||
"corner_fillet": "9",
|
||||
"edge_fillet": "0",
|
||||
"ext_bottom_front_left_adjust": "0",
|
||||
"ext_bottom_front_left_enable": "true",
|
||||
@@ -9755,7 +9755,7 @@
|
||||
"sbc_model": "m2",
|
||||
"sbc_off": "false",
|
||||
"sbc_top_standoffs": "false",
|
||||
"sidethick": "2",
|
||||
"sidethick": "3",
|
||||
"standard_motherboard_thickness": "0",
|
||||
"text_color": "Green",
|
||||
"text_font": "Nimbus Mono PS",
|
||||
|
||||
@@ -493,7 +493,10 @@ accessory_data = [
|
||||
|
||||
// NAS Case
|
||||
["nas",
|
||||
"model","hd35",-1,-67,200,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait"],[true,20,2,"both"]],
|
||||
"model","hd35",-1,-67,148,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait"],[true,20,2,"both"],
|
||||
"model","hd35",-1,-67,112,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait"],[true,20,2,"both"],
|
||||
"model","hd35",-1,-67,76,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait"],[true,20,2,"both"],
|
||||
"model","hd35",-1,-67,40,"bottom",[0,0,0],["case",true,true,false],[0,0,0],["portrait"],[true,20,2,"both"]],
|
||||
|
||||
// circuitsetup solar energy meter
|
||||
["cs_solarmeter",
|
||||
|
||||
Reference in New Issue
Block a user