summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gimbal.scad10
1 files changed, 10 insertions, 0 deletions
diff --git a/gimbal.scad b/gimbal.scad
index f85a4fa..e4a54f0 100644
--- a/gimbal.scad
+++ b/gimbal.scad
@@ -89,6 +89,16 @@ module shell() {
// hollow out the sphere
sphere(d/2);
+ // reduce top to a cone, so that an attached surface can
+ // rotate freely
+ assign(a=2 * (45 - acos((d - 2*cutoff) / d)))
+ assign(h=d * tan(a))
+ translate([0, 0, d/2 - h - cutoff*cos(a/2)])
+ difference() {
+ cylinder(r=d, h=d);
+ cylinder(r1=d, r2=0, h=h);
+ }
+
// add intro region
translate([0, 0, d])
cube([d-2*cutoff, d*2, 2*d], center=true);
contact: Jan Huwald // Impressum