-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathlevelKnob.scad
More file actions
46 lines (39 loc) · 1.04 KB
/
levelKnob.scad
File metadata and controls
46 lines (39 loc) · 1.04 KB
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
45
46
knobHeight=8;
numberOfGrips=10;
gripRadius=knobHeight;
knobRadius=50/2;
hubRadius=10/2;
hubHeight=2;
knob();
module knob(){
difference(){
union() {
grip();
translate([0,0,-knobHeight/2])cylinder(h=knobHeight, r=knobRadius);
#translate([0,0,knobHeight/2])cylinder(h=hubHeight, r=hubRadius);
}
difference(){
#translate([0,0,knobHeight/2])cylinder(h=knobHeight*2, r=knobRadius*2);
translate([0,0,knobHeight/2])cylinder(h=hubHeight, r=hubRadius);
}
translate([0,0,-(knobHeight*2)-knobHeight/2])cylinder(h=knobHeight*2, r=knobRadius*2);
#translate([0,0,-knobHeight/2])m5Screw();
}
}
module grip(){
for ( i = [0 : numberOfGrips] )
{
rotate( i * 360 / numberOfGrips+1, [0, 0, 1])
translate([0, knobRadius, 0])
// sphere(r = gripRadius, $fn=15);
cube([gripRadius,gripRadius,gripRadius],center=true);
}
}
module m5Screw(h=15) {
union() {
translate([0,0,5])cylinder(h=h+5,r=5.6/2);
// cylinder(h=5,r=3.6/2);
// #translate([0,0,h-0.4])cylinder(h=5.5,r=6.3/2);
translate([0,0,-0.1])cylinder(h=5.5,r=9.9/2,$fn=6);
}
}