This commit is contained in:
2025-08-22 22:13:20 +02:00
parent 3202d53bda
commit 3a3fb829ff

View File

@@ -6,9 +6,14 @@ $length = $width;
$height = 1; $height = 1;
$holes = $height*4; $holes = $height*4;
$cut = $holes/2*-1; $cut = $holes/2*-1;
$switchDistance = $width+ $space;
$shellWidth = 6;
$clearance = 0.2; $clearance = 0.2;
$switchDistance = $width+ $space;
$shellWidth = 6;
$shellHeight = 3.5 + $clearance;
$magnetWidth = 4;
$magnetHeight = 2;
$columns = 6; $columns = 6;
$rows = 5; $rows = 5;
@@ -94,8 +99,10 @@ leftTopDampener();
} }
} }
//topDampeners(); module case(){
module magnets(){
cylinder(h=$magnetHeight + $clearance, r=$magnetWidth + $clearance / 2);
}
points = [ points = [
[0,0], [0,0],
[0, $switchDistance * $rows], [0, $switchDistance * $rows],
@@ -114,12 +121,51 @@ points = [
[$switchDistance * 2, 0 + $fingerStep], [$switchDistance * 2, 0 + $fingerStep],
[$switchDistance * 2, 0], [$switchDistance * 2, 0],
]; ];
difference(){
union() { union() {
linear_extrude(5){ linear_extrude($shellHeight){
difference(){ difference(){
offset(r=$shellWidth/2 + $clearance, chamfer=true) polygon(points); offset(r=$shellWidth/2 + $clearance, chamfer=true) polygon(points);
offset(r=$clearance) 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=$shellWidth/2 + $clearance, chamfer=true) polygon(points);
} }
}
}
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();