diff --git a/rev2/3d-models/top-dampener.scad b/rev2/3d-models/top-dampener.scad index 880c227..3d53e4b 100644 --- a/rev2/3d-models/top-dampener.scad +++ b/rev2/3d-models/top-dampener.scad @@ -6,9 +6,14 @@ $length = $width; $height = 1; $holes = $height*4; $cut = $holes/2*-1; -$switchDistance = $width+ $space; -$shellWidth = 6; $clearance = 0.2; +$switchDistance = $width+ $space; + +$shellWidth = 6; +$shellHeight = 3.5 + $clearance; +$magnetWidth = 4; +$magnetHeight = 2; + $columns = 6; $rows = 5; @@ -94,9 +99,11 @@ leftTopDampener(); } } -//topDampeners(); - -points = [ +module case(){ + module magnets(){ + cylinder(h=$magnetHeight + $clearance, r=$magnetWidth + $clearance / 2); + } + points = [ [0,0], [0, $switchDistance * $rows], [$switchDistance * 2, $switchDistance * $rows], @@ -114,12 +121,51 @@ points = [ [$switchDistance * 2, 0 + $fingerStep], [$switchDistance * 2, 0], ]; +difference(){ union() { -linear_extrude(5){ - difference(){ + linear_extrude($shellHeight){ + difference(){ + offset(r=$shellWidth/2 + $clearance, chamfer=true) polygon(points); + offset(r=$clearance) polygon(points); + } + } + translate([0,0,-3]){ + linear_extrude(3){ offset(r=$shellWidth/2 + $clearance, chamfer=true) polygon(points); - offset(r=$clearance) polygon(points); } } -offset(r=$shellWidth/2 + $clearance, chamfer=true) polygon(points); -} \ No newline at end of file +} + rotate([90,0,0]) { + translate([0,0,-500]){ + linear_extrude(99999){ + polygon( + [ + [0 - $shellWidth/2, -3], + [$switchDistance * 6 + $switchDistance/2,0], + [$switchDistance * 6 + $shellWidth/2, -3] + ] + ); + } + } + } + // usb + translate([10, $switchDistance * 5, -2]){ + union() { + cube([10,$shellWidth,5]); + translate([-5,-$shellWidth + $clearance - 40,0]) + cube([20,$shellWidth + 40,5]); + + } + } + // aux + translate([-$shellWidth,75,0]) + rotate([0,90,0]) + cylinder(h=$shellWidth + 15,r=2.5); + translate([0,0,5]) + magnets(); + +} +} + +//topDampeners(); +case();