diff options
Diffstat (limited to 'case')
-rw-r--r-- | case/case.scad | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/case/case.scad b/case/case.scad new file mode 100644 index 0000000..ac8c187 --- /dev/null +++ b/case/case.scad @@ -0,0 +1,81 @@ +pcb_width = 257.175; +pcb_height = 95.250; + +radius = 0.5; +$fn = 72; + +/* Lower left rounded corner */ +rotate([-90, 90, 90]) + rotate_extrude(angle = 90) { + intersection() { + circle(r=radius); + square(radius*2); + } + } + +/* Lower right rounded corner */ +translate([pcb_width, 0, 0]) +rotate([270, 0, 0]) +linear_extrude(pcb_height) + intersection() { + circle(r=radius); + square(radius*2); + } + +/* Upper left rounded corner */ +translate([0, pcb_height, 0]) +rotate([0, 90, 90]) + rotate_extrude(angle = 90) { + intersection() { + circle(r=radius); + square(radius*2); + } + } + +/* Upper right rounded corner */ +translate([pcb_width, pcb_height, 0]) +rotate([90, 90, 90]) + rotate_extrude(angle = 90) { + intersection() { + circle(r=radius); + square(radius*2); + } + } + +/* Left rounded edge */ +rotate([270, 90, 0]) +linear_extrude(pcb_height) + intersection() { + circle(r=radius); + square(radius*2); + } + +/* Bottom rounded edge */ +rotate([90, 180, 90]) +linear_extrude(pcb_width) + intersection() { + circle(r=radius); + square(radius*2); + } + +/* Right rounded edge */ +translate([pcb_width, 0, 0]) +rotate([180, 90, 90]) + rotate_extrude(angle = 90) { + intersection() { + circle(r=radius); + square(radius*2); + } + } + + +/* Top rounded edge */ +translate([0, pcb_height, 0]) +rotate([0, 90, 0]) +linear_extrude(pcb_width) + intersection() { + circle(r=radius); + square(radius*2); + } + +square([pcb_width, pcb_height], false);
\ No newline at end of file |