E5-Microswiss-Spider/BaseLeft.scad

63 lines
1.5 KiB
OpenSCAD

t = 7;
w = 35;
h = 47.7;
rc = 6.5;
rcs = 2;
$fn = 100;
module through(l=7, lh=3.3, lt=1, lb=1){
union(){
translate([0,0,l-lh])cylinder(h=lh+lt, d=5.6);
translate([0,0,-lb])cylinder(h=l+lh+lb, d=3.5);
}
}
module m3 (h=8, lb=1){
translate([0,0,-lb])cylinder(h+lb, d=2.5); // tapped M3
//translate([0,0,-lb])cylinder(h+lb, d=4); // rutex insert
}
module m2 (h=8, lt=1){
translate([0,0,-lt])cylinder(h, d=1.5); // tapped M3
//translate([0,0,-lt])cylinder(h, d=3.2); // rutex insert
}
difference(){
hull(){
translate([rc, rc])cylinder(h=t, r=rc);
translate([rc,h-rc])cylinder(h=t, r=rc);
translate([w-rcs, h-rcs])cylinder(h=t, r=rcs);
translate([w-rcs, rcs])cylinder(h=t, r=rcs);
}
translate([30.4, h-14.75])through(l=t);
translate([13.2, h-33.7])through(l=t);
translate([-1, h-24-14,-1])hull(){
cube([1,14, t+2]);
translate([5,3])cylinder(h=t+2,r=3);
translate([5,11])cylinder(h=t+2,r=3);
}
translate([35,h-19.5-31,-1])hull(){
translate([0,3])cylinder(h=t+2,r=3);
translate([0,30])cylinder(h=t+2,r=3);
}
translate([12,h-12,-1])cylinder(h=t+2,d=5.5);
translate([32.3,h-52.3,-1])cylinder(h=t+2,d=11);
//fan shroud
for(x=[24.6]){
for(y=[23.4,43.7]){
translate([x,h-y,0])m3();
}
}
//cooling fan mount
for(x=[24]){
for(y=[33.7,11.7]){
translate([x,h-y,0])m3();
}
}
translate([10,0,t/2])rotate([-90,0,0])m2();
//cooling fan duct
//translate
}