// OpenSCAD script: bookbinding ruler // (c) Konrad Rosenbaum , 2024 // protected under the GNU GPL v.2 or at your option any newer // DE: // Dies ist ein Lineal für Buchbinde-Arbeiten: es erlaubt erleichterte // Lochung mit Ahle. Es ist für den Fall A5 Brochüre auf A4 Blättern gedruckt. // Die Loch-Position 4cm vom Rand, 3cm breit ist für nahezu alle Brochüren in // diesem Format geeignet. // EN: // This is a ruler that helps with putting punctures into brochures for sewing // when using an awl. It is made for A5 format brochures printed on A4 paper. // The puncture position 4cm from the edge and 3cm wide should work for almost // any brochure in that format. //helpers to position cm numbers function cm_x(mm) = (mm==40 || mm==70 || mm==140 || mm==170) ? 22 : 10; function cm_y(mm) = (mm < 99) ? mm-1.5 : mm-3 ; //description of the ruler union(){ difference() { //main body cube([40,215,2]); //edge translate([0,-1,0]) rotate([0,-45,0]) cube([10,230,10]); //needle marks translate([0,40,0]) rotate([45,-8,0]) cube([20,10,10]); translate([0,70,0]) rotate([45,-8,0]) cube([20,10,10]); translate([0,140,0]) rotate([45,-8,0]) cube([20,10,10]); translate([0,170,0]) rotate([45,-8,0]) cube([20,10,10]); //thread hint translate([13,43,1.5]) rotate([0,-45,0]) cube([10,24,10]); translate([13,143,1.5]) rotate([0,-45,0]) cube([10,24,10]); //cm edge marks for(mark = [10:10:210]){ color("black") translate([0,mark,-.5]) rotate([45,-45,0]) cube([10,10,10]); } } //side board translate([-5,-2,0])cube([45,2,4]); //name of the thing color("red") translate([38,20,1.5]) rotate([0,0,90]) linear_extrude(height=1){ text("A5 Buchbinde-Schablone", size=10, font="URW Bookman"); }; //cm numbers for(mark = [10:10:210]){ color("red") translate([ cm_x(mark) , cm_y(mark) ,1.5]) rotate([0,0,90]) linear_extrude(height=1){ text(str(mark/10), size=4); }; } } //END of Script