// resolution $fn = 50; // Parameters inner_radius = 120; thickness = 30; outer_radius = inner_radius + thickness; height = 18; padding = 0; magnet_width=6.35; magnet_height=3.17; module ring(inner_radius, thickness, height) { difference() { // This piece will be created: cylinder(r=inner_radius + thickness, h=height, center=false); // Everything else listed will be taken away: cylinder(r=inner_radius, h=height, center=false); } } difference() { ring(inner_radius,thickness,height); translate([0,0,height-5]) { ring(inner_radius+20,10,5); } translate([0,0,0]) { ring(inner_radius,20,5); } translate([inner_radius+10,0,height-magnet_height]) { cylinder(r=magnet_width, h=magnet_height, center=false); } rotate([0,0,120]) { translate([inner_radius+10,0,height-magnet_height]) { cylinder(r=magnet_width, h=magnet_height, center=false); } } rotate([0,0,240]) { translate([inner_radius+10,0,height-magnet_height]) { cylinder(r=magnet_width, h=magnet_height, center=false); } } //bottom holes rotate([0,0,60]) { translate([inner_radius+10,0,5]) { cylinder(r=magnet_width, h=magnet_height, center=false); } } rotate([0,0,180]) { translate([inner_radius+10,0,5]) { cylinder(r=magnet_width, h=magnet_height, center=false); } } rotate([0,0,300]) { translate([inner_radius+10,0,5]) { cylinder(r=magnet_width, h=magnet_height, center=false); } } }