//CC BY NC 4.0 // Attribution : // - Luc Hanneuse, author, conception, realisation, OpenScad design, optimisation for 3D printing & documentation. // - Florent Lemaire for OpenScad help // AgriLab, http://agrilab.unilasalle.fr/ , Innovation Center & FabLab Collaborative innovation for Agriculture // Name : Bpex, Boitier Parametrique Extérieur // Contact for other licences or commercial usage : agrilab@unilasalle.fr // Inspired by the Stevenson screen $fn = 100; // unit in mm shell = 0.4 * 4; // multiple of the printer's nozzel size, here 0.4 sizeBase = 40; // bottom radius sizeTop = 30; // top radius pinInsideSize = 3.2; // Thread diameter numberOfPin = 3; // number of thread height= 20; // height of each element difference() { cylinder(r1=sizeBase, r2=sizeTop, h=height, center=true); cylinder(r1=sizeBase-shell, r2=sizeTop-shell, h=height, center=true); for (p = [0:numberOfPin-1]) { rotate([0,0,p*360/numberOfPin]) { translate([sizeTop,0,0]) { cylinder(r=pinInsideSize, h=height, center=true); } } } } for (p = [0:numberOfPin-1]) { rotate([0,0,p*360/numberOfPin]) { translate([sizeTop,0,0]) {difference() { cylinder(r=pinInsideSize+shell, h=height, center=true); cylinder(r=pinInsideSize, h=height, center=true); } } } }