Blame | Last modification | View Log | RSS feed
upper_display_h = 0;
upper_knob_h = 12;
scale([0.5, 0.5,1]) {
union() {
difference() {
translate([0,0,upper_display_h + 0]) cylinder(upper_knob_h, 5.5, 5.5);
union() {
translate([0,0,upper_display_h - 1]) cylinder(4, 3.5, 3.5);
difference() {
translate([0,0,upper_display_h + 3]) cylinder(7, 3.5, 3.5);
translate([-3.5, -3, upper_display_h + 3])cube([2, 6, 7]);
}
}
}
difference() {
union() {
translate([0,0,upper_display_h + 0]) {
difference() {
cylinder(upper_knob_h, 12, 10);
cylinder(upper_knob_h - 2, 10, 8);
}
}
difference() {
translate([0,0,upper_display_h - 4]) {
for ( i = [0:15] ) {
rotate (i*360/16, [0,0,1])
translate([4,-0.5,upper_display_h + 4]) cube([10,1,upper_knob_h]);
}
}
translate([0,0,upper_display_h - 1]) difference() {
cylinder(upper_knob_h + 2,20,18);
cylinder(upper_knob_h + 2,14,10);
}
translate([0,0,upper_display_h - 1]) difference() {
cylinder(upper_knob_h + 2,20,18);
cylinder(upper_knob_h + 2,13,13);
}
}
}
union() {
translate([0,0,upper_knob_h - 2]) {
difference() {
cylinder(5,22,9);
cylinder(5,12,3);
}
}
}
translate([0,0,upper_display_h-1]) cylinder(4, 3.5, 3.5);
difference() {
translate([0,0,upper_display_h+3]) {
cylinder(7, 3.5, 3.5);
}
translate([-3.5, -3, upper_display_h+3]) {
cube([2, 6, 7]);
}
}
}
}
}