123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- x1 = 8;
- y1 = 4;
- x2 = x1+23;
- y2 = y1+10;
- x3 = x2+12.75;
- y3 = y2+60;
- sink_width = 54;
- sink_height = 6;
- sink_depth = 25+y3+1;
- fins_y = 20.5;
- fin_width = sink_width+2;
- fin_thickness = 2;
- fin_spacing = 3;
- fin_depth = sink_height-2;
- module screw_hole(x,y,height) {
- shh=3;
- translate([x,y,height]) cylinder(h=shh, r=5/2, center = true, $fn=40);
- translate([x,y,height/2]) cylinder(h=height+1, r=2.2/2, center = true, $fn=20);
- }
- union() {
- difference() {
- cube([sink_width,sink_depth,sink_height]);
-
- screw_hole(x1,y1,sink_height);
- screw_hole(x2,y1,sink_height);
- screw_hole(x3,y2,sink_height);
- screw_hole(x3,y3,sink_height);
-
- for (i = [-4 : -2]) {
- translate([-1,fins_y+i*fin_spacing,sink_height-fin_depth]) cube([fin_width-15,fin_thickness,fin_depth+1]);
- }
-
- for (i = [-1 : 16]) {
- translate([-1,fins_y+i*fin_spacing,sink_height-fin_depth]) cube([fin_width,fin_thickness,fin_depth+1]);
- }
-
- for (i = [17 : 18]) {
- translate([-1,fins_y+i*fin_spacing,sink_height-fin_depth]) cube([fin_width-15,fin_thickness,fin_depth+1]);
- }
-
- for (i = [19 : 25]) {
- translate([-1,fins_y+i*fin_spacing,sink_height-fin_depth]) cube([fin_width,fin_thickness,fin_depth+1]);
- }
-
- //translate([42.5,1.5,6.5]) linear_extrude(height = 2, center = true, convexity = 10) scale(0.12) import(file = "mnt.svg");
- }
- // cpu contact pad
- translate([x3-17-15,y2+18.6-3.2,-1]) color([1,0,0]) cube([17,17,1]);
- }
|