Hendrik Langer
6 years ago
3 changed files with 38937 additions and 0 deletions
@ -0,0 +1,69 @@ |
|||
wall = 2.0; |
|||
tolerance = 0.4; |
|||
corner = 20.0; |
|||
|
|||
width=90; |
|||
length=38+30+38; |
|||
height=58.0; |
|||
|
|||
hdmi_y_space = 33.0; |
|||
pi_z = 40; |
|||
|
|||
$fn=50; |
|||
|
|||
module base(x, y, z, thick, bottom_thick) { |
|||
translate([corner,corner,-bottom_thick]) |
|||
difference() { |
|||
minkowski() { |
|||
cube([x-2*corner,y-2*corner,z]); |
|||
cylinder(r=corner+thick,h=0.1); |
|||
} |
|||
difference() { |
|||
translate([0,0,bottom_thick]) minkowski() { |
|||
cube([x-2*corner,y-2*corner,z+2]); |
|||
cylinder(r=corner,h=0.1); |
|||
} |
|||
translate([-corner+2,-corner+2,0]) cylinder(r=corner,h=z-8); |
|||
translate([x-corner-2,-corner+2,0]) cylinder(r=corner,h=z-8); |
|||
translate([-corner+2,y-corner-2,0]) cylinder(r=corner,h=z-8); |
|||
translate([x-corner-2,y-corner-2,0]) cylinder(r=corner,h=z-8); |
|||
} |
|||
translate([x/2-corner,y/2-corner+6,-bottom_thick]) cylinder(r=23/2+tolerance,h=3*bottom_thick); |
|||
} |
|||
} |
|||
|
|||
module holes(r, h, w,w2) { |
|||
holes_x=58.0; |
|||
holes_y=23.0; |
|||
translate([0,0,0]) {cylinder(r=r,h=h); translate([-w2/2,0,h/2]) cube([w2,r*2,h],center=true);} |
|||
translate([holes_x,0,0]) {cylinder(r=r,h=h); translate([w/2,0,h/2]) cube([w,r*2,h],center=true);} |
|||
translate([0,holes_y,0]) {cylinder(r=r,h=h); translate([-w2/2,0,h/2]) cube([w2,r*2,h],center=true);} |
|||
translate([holes_x,holes_y,0]) {cylinder(r=r,h=h); translate([w/2,0,h/2]) cube([w,r*2,h],center=true);} |
|||
} |
|||
|
|||
difference() { |
|||
union() { |
|||
translate([-4-3.5-5,-hdmi_y_space,0]) base(width, length, height, wall, wall); |
|||
difference() { |
|||
holes(3.5, pi_z, 21,14); |
|||
translate([0,0,pi_z-16]) holes(2.0/2+0.2, pi_z, 0,0); |
|||
} |
|||
|
|||
} |
|||
|
|||
translate([58-(12.4-3.5),-hdmi_y_space-1+(20/2),pi_z+1.8]) { // hdmi |
|||
cube([22,20,13], center=true); |
|||
translate([0,-2*wall,0]) cube([17.5,20,9], center=true); |
|||
} |
|||
|
|||
translate([58-(41.4-3.5),-30,pi_z+1.8]) rotate([90,0,0]) { // usb |
|||
cylinder(r=3.0/2+tolerance,h=10); |
|||
translate([0,20/2,5]) cube([3.0+2*tolerance,20,10], center=true); |
|||
} |
|||
|
|||
#translate([width/2-4-3.5-5,length/2+5,-2*wall]) { |
|||
translate([-20,0,0]) cylinder(r=5.0/2+tolerance,h=3*wall); // led1 |
|||
translate([+20,0,0]) cylinder(r=5.0/2+tolerance,h=3*wall); // led2 |
|||
} |
|||
|
|||
} |
File diff suppressed because it is too large
File diff suppressed because it is too large
Loading…
Reference in new issue