diff options
-rw-r--r-- | gimbal.scad | 10 |
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); |