Rev 4130 Rev 4215
Line 1... Line 1...
1 height = 50; 1 height = 50;
2 mount_hole = 3.5; 2 mount_hole = 3.5;
3 clear = 0.175; 3 clear = 0.175;
4 thickness = 1.2; 4 thickness = 1.2;
-   5 baseboard_thickness = 2;
-   6 teeth_width = 8;
-   7 teeth_count = 6;
-   8 teeth_size = 1;
5   9  
6 $fn=20; 10 $fn=20;
7   11  
8 module leg () { 12 module leg () {
9 difference () { 13 difference () {
10 cylinder(r=MLAB_grid/2 + 0.3,h=legs_height); 14 cylinder(r=MLAB_grid/2 + 0.3,h=legs_height);
11 cylinder(r=MLAB_grid/2 - 0.3,h=legs_height); 15 cylinder(r=MLAB_grid/2 - 0.3,h=legs_height);
12 } 16 }
13 } 17 }
-   18 // teeth
-   19 for(count = [1:teeth_count]){
-   20 position = 150/(teeth_count+1)*count;
-   21 #translate ([position-teeth_width/2+1,-5+thickness/2,0]) cube([teeth_width-1, teeth_size, 5-baseboard_thickness]);
-   22 translate ([position-teeth_width/2+1,110+5-thickness/2,0]) cube([teeth_width-1, teeth_size, 5-baseboard_thickness]);
-   23 }
-   24  
14   25  
15 difference () { 26 difference () {
16 minkowski() { 27 minkowski() {
17 cube([150+thickness/2,110+thickness/2,height+thickness/2]); // base plastics brick 28 cube([150+thickness/2,110+thickness/2,height+thickness/2]); // base plastics brick
18 cylinder(r=5,h=0.1); 29 cylinder(r=5,h=0.1);
19 } 30 }
20 translate ([thickness, thickness, 0]) 31 translate ([thickness, thickness, 0])
21 minkowski() { 32 minkowski() {
22 cube([150-thickness, 110-thickness, height]); // hollow 33 cube([150-thickness, 110-thickness, height]); // hollow
23 cylinder(r=5,h=0.1); 34 cylinder(r=5,h=0.1);
24 } 35 }
25   36  
26 translate ([thickness/2, thickness/2, 0]) 37 translate ([thickness/2, thickness/2, 0])
27 difference () { 38 difference () {
28 minkowski() { 39 minkowski() {
29 cube([150-thickness/2+clear, 110-thickness/2+clear, 5]); // hollow for BASE1115 40 cube([150-thickness/2+clear, 110-thickness/2+clear, 5]); // hollow for BASE1115
30 cylinder(r=5,h=0.1); 41 cylinder(r=5,h=0.1);
31 } 42 }
-   43 }
-   44 for(count = [1:teeth_count]){ // teeth space
32 /// TODO Fixing cilinders teeths 45 position = 150/(teeth_count+1)*count;
-   46 translate ([position-teeth_width/2,-5-thickness,0]) cube([1,110+10+2*thickness,5]);
-   47 translate ([position+teeth_width/2,-5-thickness,0]) cube([1,110+10+2*thickness,5]);
33 } 48 }
34 } 49 }
35   -