Add top level readme, rename single_plate
[clinton/prusa3.git] / old_single_plate / src / z-axis-top.scad
CommitLineData
e6b2166c 1// PRUSA iteration3
2// Z axis top holder
3// GNU GPL v3
4// Josef Průša <iam@josefprusa.cz> and contributors
5// http://www.reprap.org/wiki/Prusa_Mendel
6// http://prusamendel.org
7
8module z_top_base(){
227457e4 9 translate([0,-5,0]) cube([8,45,16]); // plate touching the base
10 translate([0,-5,0]) cube([30,5.01,12]); // plate touching the base
e6b2166c 11 translate([0,-5,0]) cube([38,15,5]); // plate touching the base
abcf6c93 12}
13
e6b2166c 14module z_top_fancy(){
15 // Corner cutouts
abcf6c93 16 translate([0.5,0.5,0]) rotate([0,0,-45-180]) translate([-15,0,-1]) cube([30,30,51]);
17 translate([0.5,40-0.5,0]) rotate([0,0,-45+90]) translate([-15,0,-1]) cube([30,30,51]);
18 translate([-4,40+5,0]) rotate([0,0,-45-0]) translate([0,0,-1]) cube([30,30,51]);
abcf6c93 19 translate([8,0,12]) rotate([0,-45,0]) translate([0,-5,0]) cube([30,50,30]);
abcf6c93 20 translate([38-2.5,-5+2.5,0]) rotate([0,0,-45-90]) translate([-15,0,-1]) cube([30,30,51]);
21 translate([38-1.5,10-1.5,0]) rotate([0,0,-45]) translate([-15,0,-1]) cube([30,30,51]);
abcf6c93 22 translate([0,0,5]) rotate([45+180,0,0]) rotate([0,0,-45+90]) translate([0,0,-15]) cube([30,30,30]);
227457e4 23
24// Stiffner cut out
25 translate([30,0,5.5]) rotate([0,-45,0]) translate([0,-5,0]) cube([30,50,30]);
abcf6c93 26}
27
e6b2166c 28module z_top_holes(){
29 // Screw holes
abcf6c93 30 translate([-1,10,10]) rotate([0,90,0]) cylinder(h = 20, r=1.8, $fn=30);
31 translate([-1,10+20,10]) rotate([0,90,0]) cylinder(h = 20, r=1.8, $fn=30);
32
e6b2166c 33 // Screw heads
abcf6c93 34 translate([4,10,10]) rotate([0,90,0]) cylinder(h = 20, r=3.1, $fn=30);
35 translate([4,10-3.1,10]) cube([10,6.2,10]);
36 translate([4,10+20,10]) rotate([0,90,0]) cylinder(h = 20, r=3.1, $fn=30);
37 translate([4,10+20-3.1,10]) cube([10,6.2,10]);
38
39 // Z rod holder
40 translate([25+4.3,4.2,-1]) rotate([0,0,0]) cylinder(h = 50, r=4.1, $fn=15);
41 translate([25+4.3-1,3,0.6]) cube([2,10,7]); // it's bit up because it helps with printing
42}
43
e6b2166c 44// Final part
45module z_top(){
46 difference(){
47 z_top_base();
48 z_top_fancy();
49 z_top_holes();
50 }
51 translate([0,-13,0]) mirror([0,1,0]) difference(){
52 z_top_base();
53 z_top_fancy();
54 z_top_holes();
55 }
abcf6c93 56}
e6b2166c 57
58z_top();