-
Notifications
You must be signed in to change notification settings - Fork 0
/
agitator.scad
44 lines (32 loc) · 1012 Bytes
/
agitator.scad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
$fn = 30;
boltRad = 1.5/16;
headRad = 1.5/8;
module flankStructure(offset) {
translate([offset,-0.25]) cube([0.75,0.5,1.75]);
}
module flankCutout(offset) {
translate([offset,-0.25]) {
translate([0,0.125,-0.0625]) cube([1,0.25,2]);
for (i=[0.25,0.875,1.5]) {
translate([.5-(1/16),-5,i]) rotate([-90,0,0]) cylinder(r=boltRad,h=10);
translate([.5-(1/16),0,i]) rotate([90,0,0]) cylinder(r=headRad,h=10);
translate([.5-(1/16),0.5,i]) rotate([-90,0,0]) cylinder(r=headRad,h=10);
}
}
}
module agitator(spokes=4) {
difference() {
for (i=[0:(360/spokes):360]) {
rotate(i) hull() {
cylinder(r=0.4,h=1.75);
flankStructure(0.5);
}
}
cylinder(h=1.5+(1/16),r=0.28865,$fn=6);
cylinder(r=0.125,h=10);
for (i=[0:(360/spokes):360]) {
rotate(i) flankCutout(0.5);
}
}
}
agitator(3);