3
1
Back

Rotate([0, TaperAngle, 0]) rotate([0, 0, 90 + sphere_indents_offset_angle + ((360 / sphere_indents_count) * z)] sphere(r = sphere_indents_radius, $fn = smooth } module knurled_finish(ord, ird, lf, sh, fn, rn) { for(j=[0:rn-1]) assign(h0=sh*j, h1=sh*(j+1/2), h2=sh*(j+1)) { for(i=[0:fn-1]) assign(lf0=lf*i, lf1=lf*(i+1/2), lf2=lf*(i+1)) { polyhedron( points=[ [ 0,0,h0], [ ord*cos(lf0), ord*sin(lf0), h0], [ ord*cos(lf2), ord*sin(lf2), h0], [ ird*cos(lf0), ird*sin(lf0), h1], [ 0,0,h2], [ ord*cos(lf0), ord*sin(lf0), h2], [ ird*cos(lf1), ird*sin(lf1), h2], [ ord*cos(lf2), ord*sin(lf2), h0], [ ird*cos(lf0), ird*sin(lf0), h1], [ 0,0,h2], [ ord*cos(lf0), ord*sin(lf0), h2], [ ord*cos(lf2), ord*sin(lf2), h0], [ ord*cos(lf2), ord*sin(lf2), h0], [ ird*cos(lf0), ird*sin(lf0), h1], [ ord*cos(lf0), ord*sin(lf0), h2], [ ird*cos(lf1), ird*sin(lf1), h2], [ ord*cos(lf2), ord*sin(lf2), h2] echo(" Knurled Surface Library v2 "); echo(" values may be used to construe this License if you don't want markings. (RingWidth must be placed because it is based on it. 6. Each time you redistribute the program in object code or executable form.

New Pull Request