-rw-r--r-- | another.scad | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/another.scad b/another.scad index f54c5cd..b80d0d0 100644 --- a/another.scad +++ b/another.scad @@ -323,7 +323,17 @@ module the_extruder( // back side cutout - a0 = asin((mount_screwhead_d+2*extrusion_width)/mount_d); + // XXX: this is somewhat ugly and potentially bugged, + // but I want to sleep. + a0_ = atan( + (mount_d/sqrt(2)/2+mount_screw_d+pf_h(pf)+gearbox_d/2) + / + ( + pulley_d/2- + (pf_d(pf)+2*pf_shell)/2/cos(30) + ) + ); + a0 = -135 + ( (a0_>0) ? a0_ : 180+a0_ ); a1 = atan((longwing-lever_thickness/2)/(gearbox_d/2)); - translate([0,0,ls_z]) hull() { + translate([0,0,ls_z]) difference() { rotate([0,0,-180+a0]) rotate_extrude(angle=a1-a0) @@ -331,8 +341,7 @@ module the_extruder( square([sqrt(pow(gearbox_d/2,2)+pow(longwing-lever_thickness/2,2))+1, ls_h]); - cylinder(d=bore_d/2/*TODO:recalculate angles based on this, - too lazy to do that now*/, - h=ls_h,center=true); - } + translate([-mount_d/2,0,0]) + cylinder(d=gearbox_d-mount_d,h=ls_h+2,center=true,$fn=fnd*(gearbox_d-mount_d)); + }//difference translate rotate([0,0,-45]) |