68 lines
2.3 KiB
OpenSCAD
68 lines
2.3 KiB
OpenSCAD
$fn=60;
|
|
|
|
include <BOSL2/std.scad>
|
|
|
|
b_length=200;
|
|
b_height=42;
|
|
sb_height=5;
|
|
m_width=b_height+5;
|
|
m_length=b_length+5;
|
|
m_height=8;
|
|
wall=3;
|
|
blades=1;
|
|
sliders=4;
|
|
|
|
// board
|
|
module bladeboard() {
|
|
color("blue") difference() {
|
|
cuboid([200,2,42], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
|
// holes
|
|
translate([-97.5,2,18.5]) ycyl(l=m_width-wall, d=2.7);
|
|
translate([88,2,8.75]) ycyl(l=m_width-wall, d=2.7);
|
|
}
|
|
color("grey", alpha=0.5) translate([0,-9.5,0]) cuboid([200,17,40], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
|
}
|
|
|
|
module enclosure() {
|
|
difference() {
|
|
cuboid([m_length,m_width+2,m_height], rounding=1.5);
|
|
translate([0,0,sb_height]) rotate([-90,0,0]) cuboid([202,sb_height,m_width-2], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
|
translate([0,0,1]) rotate([-90,0,0]) cuboid([b_length-wall,sb_height,b_height-wall], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
|
translate([-97.5,18.5,0]) zcyl(l=m_height, d=2.7, rounding=-1);
|
|
translate([88,8.75,0]) zcyl(l=m_height, d=2.7, rounding=-1);
|
|
}
|
|
translate([-97.5,18.5,0]) tube(l=sb_height, od=6, id=2.7);
|
|
translate([88,8.75,0]) tube(l=sb_height, od=6, id=2.7);
|
|
/*[bladeboards]*/
|
|
* translate([0,0,6]) rotate([-90,0,0]) bladeboard();
|
|
}
|
|
|
|
difference() {
|
|
/*[rack]*/
|
|
for (i=[0:1:blades-1]) {
|
|
translate([0,i*m_width,0]) enclosure();
|
|
}
|
|
/*[sliding_base]*/
|
|
for (i=[0:50:50*(sliders-1)]) {
|
|
translate([i-90,m_width-60,-m_height-10]) rotate([90,0,90]) import("sliding_block_base.stl");
|
|
}
|
|
}
|
|
|
|
/*[quad_rack]*/
|
|
* color("blue", alpha=1) translate([0,-83.5,128]) rotate([0,90,0]) import("obj_1_Soquartz Blade 1 U Server Rack Mount Quad.stl");
|
|
|
|
color("red") {
|
|
difference() {
|
|
union() {
|
|
translate([0,0,23]) rotate([0,90,0]) rect_tube(h=m_length, size=m_width+5, wall=3, rounding=1.5, center=true);
|
|
translate([-m_length/2,0,23]) cuboid([3,m_width+5,m_width+5], rounding=1.5);
|
|
}
|
|
cuboid([m_length+2,m_width+2,m_height+1.5], rounding=1.5);
|
|
translate([-m_length/2,0,25]) xcyl(l=10, d=30);
|
|
for (i=[-2:1:2]) {
|
|
translate([i*40,0,47.5]) zcyl(l=3, d=30, rounding=-1.5);
|
|
translate([i*40,0,25]) ycyl(l=m_width+5, d=30, rounding=-1.5);
|
|
}
|
|
}
|
|
|
|
} |