-
Notifications
You must be signed in to change notification settings - Fork 0
/
dome.scad
31 lines (29 loc) · 1.19 KB
/
dome.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
module dome_reinforcement(dome_diameter, thickness, height) {
difference(){
resize(newsize=[thickness, 0, 0])
sphere(r=dome_diameter/2-1, $fn=60);
translate([-dome_diameter/2, -dome_diameter/2, -dome_diameter/2])
cube([dome_diameter, dome_diameter, -height]);
}
}
module dome(dome_diameter, dome_height, graft_hole_width, graft_hole_height, reinforcements_thickness) {
difference(){
cylinder(h=2, r=dome_diameter/2, $fn=60);
cylinder(h=2, r=dome_diameter/2-1);
}
translate([0, 0, 2])
difference(){
sphere(d=dome_diameter, $fn=60);
sphere(r=dome_diameter/2-1, $fn=60);
translate([-dome_diameter/2, -dome_diameter/2, -dome_diameter])
cube(dome_diameter);
}
// Dome reinforcements
/*dome_reinforcement(dome_diameter, reinforcements_thickness, -dome_diameter/1.3);
rotate([0, 0, 90])
dome_reinforcement(dome_diameter, reinforcements_thickness, -dome_diameter/1.3);
rotate([0, 0, 45])
dome_reinforcement(dome_diameter, reinforcements_thickness,-dome_diameter/1.3);
rotate([0, 0, 135])
dome_reinforcement(dome_diameter, reinforcements_thickness,-dome_diameter/1.3);*/
}