-
Notifications
You must be signed in to change notification settings - Fork 0
/
rounded_edge.scad
49 lines (49 loc) · 3.39 KB
/
rounded_edge.scad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/*
Library-Cube-with-rounded-edges-OpenSCAD by Sven Reddemann is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/.
Based on a work at https://github.com/k37z3r/Library-Cube-with-rounded-edges-OpenSCAD.
*/
module roundedcube(width=220,depth=220,height=40,fn=100){
$fn = fn;
cube([(width-height),(depth-height),height], center = true);
if (width >= depth){
intersection() {
translate([((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (width+height), r = (height/2), center = true);
translate([0, ((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
intersection() {
translate([-((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (width+height), r = (height/2), center = true);
translate([0, -((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
intersection() {
translate([-((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (width+height), r = (height/2), center = true);
translate([0, ((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
intersection() {
translate([((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (width+height), r = (height/2), center = true);
translate([0, -((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
}
else{
intersection() {
translate([((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (depth+height), r = (height/2), center = true);
translate([0, ((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
intersection() {
translate([-((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (depth+height), r = (height/2), center = true);
translate([0, -((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
intersection() {
translate([-((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (depth+height), r = (height/2), center = true);
translate([0, ((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
intersection() {
translate([((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (depth+height), r = (height/2), center = true);
translate([0, -((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width+height), r = (height/2), center = true);
}
}
translate([((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (depth-height), r= (height/2), center = true);
translate([-((width/2)-(height/2)), 0, 0]) rotate ([90,0,0]) cylinder (h = (depth-height), r= (height/2), center = true);
translate([0, ((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width-height), r= (height/2), center = true);
translate([0, -((depth/2)-(height/2)), 0]) rotate ([90,0,90]) cylinder (h = (width-height), r= (height/2), center = true);
}