3
1
Back

0]; fm_lvl = [second_col, second_row, 0]; //Third row interface placement f_tune = [width_mm/2 - h_margin, top_row, 0]; f_tune = [width_mm/2 + h_margin, top_row, 0]; scale([.38,.38,-.005]) surface("FireballSpellVertSmaller.png", center=true, invert=false); } module knurled_cyl(chg, cod, cwd, csh, cdp, fsh, smt echo("knurled cylinder min diameter: ", 2*cord); echo("knurled cylinder min diameter: ", 2*cord); echo("knurled cylinder min diameter: ", 2*cord); echo("knurled cylinder max diameter: ", 2*cird); if( fsh < 0 shape(fsh, cird+cdp*smt/100, cord, cfn*4, chg); knurled_finish(cord, cird, clf, csh, cfn, crn); else if ( hsh >= 0 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], [ ird*cos(lf1), ird*sin(lf1), h0], [ ird*cos(lf0), ird*sin(lf0), h1], [ ord*cos(lf1), ord*sin(lf1), h1], [ 0,0,h2], Created on Tue Mar 5 20:19:51 2024 ; FORMAT={-:-/ absolute / metric / decimal.

New Pull Request