Files
5x6-split-kb/rev2/3d-models/switch-dampener.scad
2025-07-15 16:42:20 +02:00

50 lines
1.0 KiB
OpenSCAD

$fn = 32;
$space = 5;
$width = 15.2;
$length = $width;
$height = 0.4;
$holes = $height*4;
$columns = 6;
$rows = 5;
module pin(){
cylinder(h=$holes, r=1, center=false);
}
module switch(){
$xCenter = $width/2;
$yCenter = $length/2;
translate([$xCenter, $yCenter, 0])
cylinder(h=$holes, r=2.522, center=false);
translate([$xCenter + 0, $yCenter + 5.9,0])
pin();
translate([$xCenter + 5, $yCenter + 3.8,0])
pin();
translate([$xCenter + -5, $yCenter + 3.8,0])
pin();
translate([$xCenter + -5, $yCenter + -5.15,0])
pin();
translate([$xCenter + 5, $yCenter+-5.15,0])
pin();
}
module switches(){
for (x=[0:$columns -1])
for (y=[0:$rows-1])
translate([x * ($width + $space/2) ,y * ($length+$space/2) ,0])
switch();
}
module body(){
$x = (($width + ($space/2)) * $columns) + $width;
$y = (($length + ($space/2)) * $rows) + $width;
cube([$x, $y, $height]);
}
difference(){
body();
translate([$space,$space,$holes/2*-1])
switches();
}