/* */ include include include PART=""; // [inner, clear, part] SEAT_DEPTH=3.50; SEAT_DIAMETER=6.30; SEAT_HOLE=3; /* [Render Options] */ render_fs=.4; render_fn=0; render_fa=.4; // Set Render Options $fs= ($preview) ? $fs : render_fs; $fn= ($preview) ? $fn : render_fn; $fa= ($preview) ? $fa : render_fa; module pc4M10_inner(back_h=13, back_d = 12, orient=ORIENT_Z, align=V_CENTER) { orient_and_align([back_d,back_d,5.82+back_h], orig_align=V_BOTTOM, orient=orient, align=align) { difference() { union() { threaded_rod( d=9.728, l=5.81, pitch=.907, internal=true, align=V_BOTTOM ); } down(5.82)difference() { cyl(d=SEAT_DIAMETER, h=SEAT_DEPTH, align=V_TOP); down(0)cyl(d=SEAT_HOLE, h=SEAT_DEPTH+.02, align=V_TOP); } } down(5.80)cyl(d1=back_d,d2=SEAT_HOLE,h=back_h+.02, align=V_BOTTOM); } } module pc4M10(cd = 12, h=14, orient=ORIENT_Z, align=V_CENTER) { orient_and_align([12,12,h],orient=orient, align=align, orig_orient=ORIENT_ZNEG) down(h/2)difference() { up(.01)cyl(d=cd,h=h, align=V_TOP); down(4.8)pc4M10_inner(align=V_TOP); } } module pc4M10_clear(cd = 12, extra=15, orient=ORIENT_Z, align=V_CENTER) { orient_and_align([12,12,extra+18.8],orient=orient, align=align, orig_orient=ORIENT_ZNEG) cyl(d=cd-.01, h=extra+18.8); } if (PART == "clear") pc4M10_clear(align=V_TOP); if (PART == "part") pc4M10(align=V_TOP);