-rw-r--r-- | x-carriage-adapter.scad | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/x-carriage-adapter.scad b/x-carriage-adapter.scad index f3ebb09..9cf6c08 100644 --- a/x-carriage-adapter.scad +++ b/x-carriage-adapter.scad @@ -84,62 +84,63 @@ module holder() { rotate([0,90,0]) cylinder(d=3+slide_tolerance,h=hs_size[0],center=true,$fn=12); // push screw hull() for(oy=[-1,1]) translate([0,-hff+ps_offset+oy,-1]) cylinder(d=3+play_tolerance,h=thread_h+2,$fn=30); // tune screw translate([0,-sff-ms_size[1]/2,-1]) cylinder(d=3,h=thread_h+2); }//difference } module base() { us = ms_size[2]+screw_shell_d/2; translate([0,-hff,0]) difference() { union() { for(sx=[-1,1]) translate([sx*(hs_size[0]-hinge_s)/2,0,0]) hull() { translate([0,0,thread_h/2]) rotate([0,90,0]) cylinder(d=thread_h,h=hinge_s,center=true,$fn=60); cube(size=[hinge_s,thread_h,thread_h],center=true); translate([-hinge_s/2,0,-1]) mirror([0,1,0]) cube(size=[hinge_s,thread_h/2+back_thickness,thread_h+1]); } // hull for hull() { translate([0,0,-us/2-slide_tolerance]) cube(size=[hs_size[0],thread_h+1,us],center=true); for(sx=[-1,1]) translate([sx*(hs_size[0]/2-ms_bump),thread_h/2,-us-slide_tolerance]) cylinder(r=ms_bump,h=us+slide_tolerance,$fn=30); } translate([-hs_size[0]/2,-thread_h/2-slide_tolerance,-us-slide_tolerance]) mirror([0,1,0]) cube(size=[hs_size[0],back_thickness,us+slide_tolerance+thread_h]); } // union translate([0,0,thread_h/2]) rotate([0,90,0]) cylinder(d=3+screw_tolerance,h=hs_size[0]+2,center=true,$fn=12); for(smx=[0,1]) mirror([smx,0,0]) translate([hs_size[0]/2+1,0,thread_h/2]) rotate([0,-90,0]) cylinder(d=screwhead_d+slide_tolerance,h=screwhead_h+1,$fn=30); /* changed my mind; for(srx=[-1,1]) rotate([srx*15,0,0]) translate([0,0,thread_h/2-slide_tolerance]) cube(size=[hs_size[0]-2*hinge_s,thread_h*sqrt(2)+2,thread_h],center=true); */ // switch mount for(sx=[-1,1]) translate([sx*ms_screws_apart/2+ms_switch_offset,thread_h/2,-ms_size[2]]) rotate([90,0,0]) cylinder(d=2.5,h=ms_size[1]*2,center=true,$fn=12); // thing mount translate([0,-thread_h/2-back_thickness,lower_by]) for(mhft = mounting_holes_from_top) translate([mhft[0],0,-mhft[1]]) { rotate([-90,0,0]) translate([0,0,-1]) cylinder(d=3,h=back_thickness+1); translate([0,back_thickness/2,0]) cube(size=[2*hs_size[0],nut_thickness+slide_tolerance,nut_width+slide_tolerance],center=true); } // translate for mirror([0,0,1]) translate([0,ps_offset,-1]) cylinder(d=3,h=hs_size[2]+1); + mirror([0,0,1]) translate([0,-thread_h/2+3/2,-1]) cylinder(d=3,h=us+2); } // difference } view="*"; if(view=="holder") { holder(); }else if(view=="base") { base(); }else { % translate([0,0,-assembly_height]) chimera_assembly(); color("lightgreen",0.7) holder(); color("darkgreen",0.7) base(); } |