summaryrefslogtreecommitdiff
path: root/another.scad
Side-by-side diff
Diffstat (limited to 'another.scad') (more/less context) (show whitespace changes)
-rw-r--r--another.scad9
1 files changed, 5 insertions, 4 deletions
diff --git a/another.scad b/another.scad
index 0d67286..8334b11 100644
--- a/another.scad
+++ b/another.scad
@@ -104,12 +104,14 @@ module the_extruder(
ls_z = filament_elevation; // leverspace mid-z
ls_h = lever_thickness+lever_v_clearance; // leverspace height
mount_depth = mount_screw_l - (ls_z+ls_h/2+min_z_shell);
body_h = max(protrusion_h+bore_l,mount_screw_l-mount_depth+mount_screwhead_h+min_z_shell,ls_z*2);
echo("mount depth",mount_depth);
+ pf_offset = mount_d/sqrt(2)/2+mount_screw_d/2+min_xy_shell;
+
module teardrop(r,d,h,center=false,angle=45) {
dd = d ? d : (2*r);
$fn = dd*fnd;
cylinder(d=dd,h=h,center=center);
if(angle>0) translate([0,0,center?-h/2:0])
rotate([0,0,angle])
@@ -157,13 +159,13 @@ module the_extruder(
rotate([0,0,45]) {
translate([pulley_d/2-idler_filament_offset,0,0]) rotate([90,0,0]) {
cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15);
}//rotate translate
translate([pulley_d/2+filament_offset,0,0]) rotate([-90,0,0]) {
cylinder(d=filament_d,h=gearbox_d,center=false,$fn=15);
- translate([0,0,mount_d/sqrt(2)/2+mount_screw_d])
+ translate([0,0,pf_offset])
pushfit(pf);
}//rotate translate
}//rotate
}//translate teeth
}//translate pulley
}//translate protrusion
@@ -251,13 +253,13 @@ module the_extruder(
}//hull translate
// pushfit bracket
translate([0,0,filament_elevation])
rotate([0,0,45]) translate([pulley_d/2+filament_offset,0,0])
rotate([-90,0,0])
- translate([0,0,mount_d/sqrt(2)/2+mount_screw_d-gearbox_d/2/*TODO:*/]) {
+ translate([0,0,pf_offset-gearbox_d/2/*TODO:*/]) {
pfbl = pf_h(pf)+gearbox_d/2; //TODO:
pfbd = pf_d(pf)+2*pf_shell;
hull() {
cylinder(d=pfbd,h=pfbl,$fn=pfbd*fnd);
translate([-epsilon/2,0,0]) {
cube(size=[epsilon,filament_elevation,pfbl-filament_elevation+pfbd/2]);
@@ -279,13 +281,12 @@ module the_extruder(
h=mount_screw_l-mount_depth+1,
$fn=fnd*(mount_screw_d+mount_screw_d_tolerance));
translate([0,0,mount_screw_l-mount_depth])
cylinder(d=mount_screwhead_d,h=body_h+1,$fn=fnd*mount_screwhead_d);
}//for
// pushfit
- pf_offset = mount_d/sqrt(2)/2+mount_screw_d;
translate([0,0,filament_elevation])
rotate([0,0,45]) translate([pulley_d/2+filament_offset,0,0])
rotate([-90,0,0])
translate([0,0,pf_offset])
rotate([0,0,180]) {
pushfit(pf);
@@ -318,13 +319,13 @@ module the_extruder(
}
// back side cutout
// 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)
+ (pf_offset+pf_h(pf)+gearbox_d/2)
/
(
pulley_d/2+filament_offset-
(pf_d(pf)+2*pf_shell)/2/cos(30)
)
);