Being able to make slots that are evenly spaced around a disk is pretty useful for making machines and timing a rotating object. Here is some simple code to make a custom slotted disk.
//
/*[Slots]*/
slot_number=24;//[1:1:36]
slot_depth=1;//[.1:.01:19]
slot_width=2;// [0:.01:100]
Angle=360;//[1:1:360]
/*[Ring]*/
outer_diameter=55;//[1:.01:200]
inner_diameter=16;//[1:.01:200]
ring_height=2;//[1:.01:20]
module slots(){
for(i=[0:Angle/10])
rotate([0,0,(360/slot_number)*i])
hull(){
linear_extrude(ring_height)
square(1,center=true);
translate([outer_diameter/2,0,0])
resize([0,slot_width,0])
linear_extrude(ring_height)
square(1);
}}
module ring(){
linear_extrude(ring_height,convexity=11){
difference(){
circle(outer_diameter/2,$fn=100);
circle(inner_diameter/2,$fn=100);
}}}
difference(){
ring();
translate([0,0,slot_depth])
slots();
}
And here are a few different results from adjusting the variables:
With a few simple modifications it would be easy to make things like a ribber for a sock machine or countless other useful objects.