Rev 4215 Rev 4217
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; 5 baseboard_thickness = thickness;
-   6  
6 teeth_width = 8; 7 teeth_width = 8;
7 teeth_count = 6; 8 teeth_count = 3;
8 teeth_size = 1; 9 teeth_size = 1;
9   10  
-   11 panel_A_width = 80;
-   12 panel_A_height = 45;
-   13 panel_A_thickeness = 1;
-   14  
-   15 panel_B_width = 0; // not implemented yet
-   16 panel_B_height = 0;
-   17 panel_B_thickeness = 0;
-   18  
10 $fn=20; 19 $fn=20;
11   20  
12 module leg () { 21 module leg () {
13 difference () { 22 difference () {
14 cylinder(r=MLAB_grid/2 + 0.3,h=legs_height); 23 cylinder(r=MLAB_grid/2 + 0.3,h=legs_height);
15 cylinder(r=MLAB_grid/2 - 0.3,h=legs_height); 24 cylinder(r=MLAB_grid/2 - 0.3,h=legs_height);
16 } 25 }
17 } 26 }
18 // teeth -  
-   27  
-   28  
19 for(count = [1:teeth_count]){ 29 for(count = [1:teeth_count]){ // teeth
20 position = 150/(teeth_count+1)*count; 30 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]); 31 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]); 32 translate ([position-teeth_width/2+1,110+5-thickness/2,0]) cube([teeth_width-1, teeth_size, 5-baseboard_thickness]);
-   33 //#translate ([position-teeth_width/2+1,110+5-thickness/2,0]) cylinder(teeth_size, teeth_width);
23 } 34 }
24   35  
25   36  
26 difference () { 37 difference () {
27 minkowski() { 38 minkowski() {
28 cube([150+thickness/2,110+thickness/2,height+thickness/2]); // base plastics brick 39 cube([150+thickness/2,110+thickness/2,height+thickness/2]); // base plastics brick
29 cylinder(r=5,h=0.1); 40 cylinder(r=5,h=0.1);
30 } 41 }
-   42 union(){
-   43
-   44 translate([-5,5+(100-panel_A_width)/2,0]) // Panel A space
-   45 #cube([thickness,panel_A_width,panel_A_height+5]);
-   46
31 translate ([thickness, thickness, 0]) 47 translate ([thickness, thickness, 0])
32 minkowski() { 48 minkowski() {
33 cube([150-thickness, 110-thickness, height]); // hollow 49 cube([150-thickness, 110-thickness, height]); // hollow
34 cylinder(r=5,h=0.1); 50 cylinder(r=5,h=0.1);
35 } 51 }
Line 39... Line 55...
39 minkowski() { 55 minkowski() {
40 cube([150-thickness/2+clear, 110-thickness/2+clear, 5]); // hollow for BASE1115 56 cube([150-thickness/2+clear, 110-thickness/2+clear, 5]); // hollow for BASE1115
41 cylinder(r=5,h=0.1); 57 cylinder(r=5,h=0.1);
42 } 58 }
43 } 59 }
44 for(count = [1:teeth_count]){ // teeth space 60 /*for(count = [1:teeth_count]){ // teeth space
45 position = 150/(teeth_count+1)*count; 61 position = 150/(teeth_count+1)*count;
46 translate ([position-teeth_width/2,-5-thickness,0]) cube([1,110+10+2*thickness,5]); 62 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]); 63 translate ([position+teeth_width/2,-5-thickness,0]) cube([1,110+10+2*thickness,5]);
-   64 }*/
48 } 65 }
49 } 66 }
-   67  
-   68