footprint_radius_safety = 0.2;
cap_height = 3;
bearing_thickness_safety = 0.6;
- finger_spot_height = cap_height / 10;
+ finger_spot_height = cap_height * 2 / 3;
+ stripes = 3;
difference() {
union() {
+ footprint_height
+ bearing_thickness / 2
- bearing_thickness_safety) {
- circle(bearing_inner_radius); }
- }
+ circle(bearing_inner_radius + 0.1); } }
translate([0, 0, -0.01]) {
cylinder(r1 = bearing_inner_radius,
r2 = bearing_inner_radius - tan(30) * finger_spot_height,
- h = finger_spot_height); } } }
+ h = finger_spot_height);
+ for(stripe = [0 : stripes - 1]) {
+ rotate((stripe / stripes) * 360) {
+ linear_extrude(height = finger_spot_height) {
+ polygon([[0, 0],
+ [bearing_cover_radius * 2, 0],
+ [cos(3 + 360 / (stripes * 2))
+ * bearing_cover_radius * 2,
+ sin(3 + 360 / (stripes * 2))
+ * bearing_cover_radius * 2]]); } } } } } }
module donut(height, footprint_radius) {
bread_radius = height / 2;