Various updates
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>;
|
||||
include <honeycomb.scad>;
|
||||
include <nutsnbolts/cyl_head_bolt.scad>;
|
||||
include <fan_holder_v2.scad>
|
||||
|
||||
base_length=100;
|
||||
base_width=108;
|
||||
base_height=30;
|
||||
fan_size=60;
|
||||
|
||||
// fan_mount
|
||||
color("blue", alpha=0.9) /*rotate([0,-90,0])*/ {
|
||||
difference() {
|
||||
union() {
|
||||
rect_tube(size1=[base_length,base_width+5], size2=[fan_size,fan_size], wall=2.5, h=base_height, rounding1=10, rounding2=3);
|
||||
translate([6.5,base_width/2+1.25,0]) cuboid([40,2.5,13], rounding=5, edges=[BOT+LEFT,BOT+RIGHT], anchor=TOP+RIGHT);
|
||||
translate([6.5,-base_width/2-1.25,0]) cuboid([40,2.5,13], rounding=5, edges=[BOT+LEFT,BOT+RIGHT], anchor=TOP+RIGHT);
|
||||
translate([-30,-30,27]) fan_mount(size=fan_size,thick=3);
|
||||
}
|
||||
// cut
|
||||
translate([base_length/2-5,0,0]) cuboid([20,60,15], rounding=10, edges=[FRONT+TOP,BACK+TOP], anchor=BOT);
|
||||
// hdds_holes
|
||||
translate([1.5,0,-8.75]) ycyl(d=3.5, l=120);
|
||||
translate([-28.5,0,-8.75]) ycyl(d=3.5, l=120);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>
|
||||
include <BOSL2/std.scad>;
|
||||
include <honeycomb.scad>;
|
||||
include <nutsnbolts/cyl_head_bolt.scad>;
|
||||
include <fan_holder_v2.scad>
|
||||
|
||||
base_length=100;
|
||||
base_width=20;
|
||||
@@ -14,7 +16,7 @@ module screw() {
|
||||
}
|
||||
|
||||
module pcie_mount() {
|
||||
difference() {
|
||||
color("cyan") difference() {
|
||||
union() {
|
||||
// Base
|
||||
cuboid([base_length,base_width,base_height], rounding=2, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT], anchor=TOP);
|
||||
@@ -35,25 +37,49 @@ module pcie_mount() {
|
||||
}
|
||||
|
||||
module riser() {
|
||||
difference() {
|
||||
union() {
|
||||
cuboid([67.45,1.65,14.25], rounding=1, edges=[TOP+RIGHT,TOP+LEFT,BOT+RIGHT,BOT+LEFT], anchor=TOP);
|
||||
cuboid([39,7.125,10.55], rounding=.5, anchor=BOT);
|
||||
translate([0,0,-7.5]) cuboid([42,7,7.5], rounding=1, edges=[TOP+RIGHT,TOP+LEFT,BOT+RIGHT,BOT+LEFT], anchor=TOP);
|
||||
}
|
||||
translate([29,0,-7.25]) ycyl(l=5, d=3.25);
|
||||
translate([-29,0,-7.25]) ycyl(l=5, d=3.25);
|
||||
color("grey") {
|
||||
difference() {
|
||||
union() {
|
||||
cuboid([67.45,1.65,14.25], rounding=1, edges=[TOP+RIGHT,TOP+LEFT,BOT+RIGHT,BOT+LEFT], anchor=TOP);
|
||||
cuboid([39,7.125,10.55], rounding=.5, anchor=BOT);
|
||||
translate([0,0,-7.5]) cuboid([42,7,7.5], rounding=1, edges=[TOP+RIGHT,TOP+LEFT,BOT+RIGHT,BOT+LEFT], anchor=TOP);
|
||||
}
|
||||
translate([29,0,-7.25]) ycyl(l=5, d=3.25);
|
||||
translate([-29,0,-7.25]) ycyl(l=5, d=3.25);
|
||||
}
|
||||
}
|
||||
|
||||
color("grey") translate([-63.2,0.825,2]) difference() {
|
||||
translate([-63.2,11,2]) difference() {
|
||||
cuboid([12.75,18.25,80], rounding=2, anchor=BOT+BACK+RIGHT);
|
||||
translate([-1,2,-1]) cuboid([15,25,80], rounding=2, anchor=BOT+BACK+RIGHT);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
!color("cyan") translate([0,-8,0]) {
|
||||
translate([0,65.5,-40]) {
|
||||
pcie_mount();
|
||||
|
||||
}
|
||||
translate([0,1,0]) riser();
|
||||
}
|
||||
|
||||
color("grey") translate([0,-7,0]) riser();
|
||||
// 2_bays_stand
|
||||
color("blue", alpha=0.9) {
|
||||
difference() {
|
||||
rotate([0,90,0]) translate([0,0,-75]) rect_tube(150, 110, 105, rounding=10);
|
||||
translate([0,0,45]) cuboid([130,120,50], rounding=5, edges=[BOT+LEFT,BOT+RIGHT]);
|
||||
translate([0,0,-54]) cuboid([130,120,20], rounding=5, edges=[TOP+LEFT,TOP+RIGHT]);
|
||||
// holes
|
||||
translate([0,0,-5]) cuboid([125,120,4], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
||||
translate([0,0,-35]) cuboid([125,120,4], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
||||
}
|
||||
translate([-75,-55,17]) linear_extrude(2.5) {
|
||||
honeycomb(150, 110, 15, 4, whole_only=true);
|
||||
}
|
||||
translate([0,51,-13]) cuboid([150,5,2], rounding=3, edges=[FRONT+LEFT,FRONT+RIGHT]);
|
||||
translate([0,51,-43]) cuboid([150,5,2], rounding=3, edges=[FRONT+LEFT,FRONT+RIGHT]);
|
||||
translate([0,-51,-13]) cuboid([150,5,2], rounding=3, edges=[BACK+LEFT,BACK+RIGHT]);
|
||||
translate([0,-51,-43]) cuboid([150,5,2], rounding=3, edges=[BACK+LEFT,BACK+RIGHT]);
|
||||
}
|
||||
|
||||
// fan_mount
|
||||
rotate([0,-90,0]) {
|
||||
translate([0,0,75]) rect_tube(size1=[110,110], size2=[60,60], wall=2.5, h=30, rounding1=10, rounding2=3);
|
||||
translate([-30,-30,103]) fan_mount(size=60,thick=3);
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>;
|
||||
include <honeycomb.scad>;
|
||||
include <nutsnbolts/cyl_head_bolt.scad>;
|
||||
include <fan_holder_v2.scad>
|
||||
|
||||
base_length=100;
|
||||
base_width=20;
|
||||
base_height=15;
|
||||
|
||||
module screw() {
|
||||
nutcatch_parallel("M3", clh=0.1);
|
||||
translate([0,0,23]) hole_through(name="M3", l=16, cld=0.1, h=10, hcld=0.4);
|
||||
*nutcatch_sidecut("M3", l=20, clk=0.1, clh=0.1, clsl=0.1);
|
||||
}
|
||||
|
||||
module pcie_mount() {
|
||||
color("cyan") difference() {
|
||||
union() {
|
||||
// Base
|
||||
cuboid([base_length,base_width,base_height], rounding=2, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT], anchor=TOP);
|
||||
translate([0,-10,-5]) cuboid([80,4,50], rounding=40, edges=[TOP+RIGHT,TOP+LEFT,], anchor=BOT+FRONT);
|
||||
// Front support
|
||||
*translate([-65,0,0]) cuboid([10,20,80.5], rounding=2, edges=[FWD+LEFT,BACK+LEFT, TOP+RIGHT], anchor=BOT+RIGHT);
|
||||
}
|
||||
// riser_screwholes
|
||||
translate([29,-8,-7.25]) rotate([0,-90,-90]) screw();
|
||||
translate([-29,-8,-7.25]) rotate([0,-90,-90]) screw();
|
||||
// cage_screwholes
|
||||
translate([0,-20,35]) rotate([0,-90,-90]) screw();
|
||||
translate([0,-20,5]) rotate([0,-90,-90]) screw();
|
||||
// riser_nest
|
||||
cuboid([68,2,base_height], rounding=-1, edges=[TOP+RIGHT,TOP+LEFT,TOP+BACK,TOP+FRONT], anchor=TOP+FRONT);
|
||||
translate([0,-3,0]) cuboid([44,14,base_height], rounding=-1, edges=[TOP+RIGHT,TOP+LEFT,TOP+FRONT], anchor=TOP+FRONT);
|
||||
}
|
||||
}
|
||||
|
||||
module riser() {
|
||||
color("grey") {
|
||||
difference() {
|
||||
union() {
|
||||
cuboid([67.45,1.65,14.25], rounding=1, edges=[TOP+RIGHT,TOP+LEFT,BOT+RIGHT,BOT+LEFT], anchor=TOP);
|
||||
cuboid([39,7.125,10.55], rounding=.5, anchor=BOT);
|
||||
translate([0,0,-7.5]) cuboid([42,7,7.5], rounding=1, edges=[TOP+RIGHT,TOP+LEFT,BOT+RIGHT,BOT+LEFT], anchor=TOP);
|
||||
}
|
||||
translate([29,0,-7.25]) ycyl(l=5, d=3.25);
|
||||
translate([-29,0,-7.25]) ycyl(l=5, d=3.25);
|
||||
}
|
||||
translate([-63.2,11,2]) difference() {
|
||||
cuboid([12.75,18.25,80], rounding=2, anchor=BOT+BACK+RIGHT);
|
||||
translate([-1,2,-1]) cuboid([15,25,80], rounding=2, anchor=BOT+BACK+RIGHT);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
translate([0,65.5,-27.5]) {
|
||||
pcie_mount();
|
||||
translate([0,1,0]) riser();
|
||||
}
|
||||
|
||||
|
||||
!color("blue", alpha=0.9) {
|
||||
// 2_hdds_stand
|
||||
difference() {
|
||||
rotate([0,90,0]) translate([0,0,-75]) rect_tube(150, 110, 105, rounding=10);
|
||||
translate([0,0,45]) cuboid([130,120,50], rounding=5, edges=[BOT+LEFT,BOT+RIGHT]);
|
||||
translate([0,0,-54]) cuboid([130,120,20], rounding=5, edges=[TOP+LEFT,TOP+RIGHT]);
|
||||
// hdds_holes
|
||||
translate([0,0,-5]) cuboid([125,120,4], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
||||
translate([0,0,-35]) cuboid([125,120,4], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
|
||||
// riser_holes
|
||||
translate([0,0,7.5]) ycyl(d=3, l=120);
|
||||
translate([0,0,-22.5]) ycyl(d=3, l=120);
|
||||
}
|
||||
translate([-75,-55,17]) linear_extrude(2.5) {
|
||||
honeycomb(150, 110, 15, 4, whole_only=true);
|
||||
}
|
||||
translate([0,51,-13]) cuboid([150,5,2], rounding=3, edges=[FRONT+LEFT,FRONT+RIGHT]);
|
||||
translate([0,51,-43]) cuboid([150,5,2], rounding=3, edges=[FRONT+LEFT,FRONT+RIGHT]);
|
||||
translate([0,-51,-13]) cuboid([150,5,2], rounding=3, edges=[BACK+LEFT,BACK+RIGHT]);
|
||||
translate([0,-51,-43]) cuboid([150,5,2], rounding=3, edges=[BACK+LEFT,BACK+RIGHT]);
|
||||
// fan_mount
|
||||
rotate([0,-90,0]) {
|
||||
difference() {
|
||||
translate([0,0,75]) rect_tube(size1=[110,110], size2=[60,60], wall=2.5, h=30, rounding1=10, rounding2=3);
|
||||
rotate([0,50,0]) translate([-35,0,90]) cuboid([35,60,10], rounding=10, , edges=[FRONT+LEFT,BACK+LEFT]);
|
||||
}
|
||||
translate([-30,-30,103]) fan_mount(size=60,thick=3);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
$fn=60;
|
||||
|
||||
include <BOSL2/std.scad>;
|
||||
|
||||
zb_length=108;
|
||||
zb_width=81;
|
||||
zb_height=23;
|
||||
|
||||
module zimablade() {
|
||||
color("grey") cuboid([zb_length,zb_width,zb_height], rounding=2, anchor=BOT);
|
||||
}
|
||||
|
||||
*zimablade();
|
||||
|
||||
|
||||
difference() {
|
||||
union() {
|
||||
cuboid([126,102,3], rounding=2, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT], anchor=TOP);
|
||||
cuboid([120,108,3], rounding=2, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT], anchor=TOP);
|
||||
cuboid([zb_length+10,zb_width+10,5], rounding=2, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT], anchor=BOT);
|
||||
}
|
||||
cuboid([zb_length+2,zb_width+2,5], rounding=2, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT], anchor=BOT);
|
||||
cuboid([zb_length-2,zb_width-2,5], rounding=2, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT], anchor=TOP);
|
||||
cuboid([zb_length-20,zb_width+20,5], anchor=BOT);
|
||||
cuboid([zb_length+20,zb_width-20,5], anchor=BOT);
|
||||
}
|
||||
/*
|
||||
102.5
|
||||
120
|
||||
140
|
||||
108.25
|
||||
*/
|
||||
Reference in New Issue
Block a user