chiark / gitweb /
trackpump-mutlihead-clip: move baseplate into PumpSide so it can be non-square (nfc)
[reprap-play.git] / trackpump-mutlihead-clip.scad
index 0b8bd01ef36d49e26a66baeade05f19ef01b89d7..90141af7733792a138376a0fac23d211c886ad11 100644 (file)
@@ -31,18 +31,19 @@ baseplate_width_rad =
 
 xm = baseplate + pump_main_dia/2;
 
+pump_side_total_height =
+  pump_side_thick + pump_side_height + pump_protr_slheight + pump_protr_flat;
+
 $fa=5;
 
 module PumpSidePlan() {
   or = pump_side_outer_rad;
-  br = baseplate_width_rad;
   difference(){
     union(){
       intersection(){
        translate([-xm, 0]) circle(r=or);
        translate([-(xm+or), -or]) square([xm+or, or*2]);
       }
-      translate([-xm, -br]) square([xm, br*2]);
     }
     translate([-xm-or, 0])
       square(center=true, [pump_side_width*4, pump_shaft_dia]);
@@ -81,15 +82,25 @@ module PumpSideElevation(){
 }
 
 module PumpSide(){
+  br = baseplate_width_rad;
+
   difference(){
     intersection(){
       translate([0,100,0])
        rotate([90,0,0])
        linear_extrude(height=200)
-      PumpSideElevation();
-      translate([0,0,-100])
-       linear_extrude(height=200)
-       PumpSidePlan();
+       PumpSideElevation();
+      union(){
+       translate([0,0,-100])
+         linear_extrude(height=200)
+         PumpSidePlan();
+       // baseplate
+       mirror([0,0,1])
+         translate([-xm, -br, 0])
+         cube([xm,
+               br*2,
+               pump_side_total_height]);
+      }
     }
     translate([-(baseplate + pump_main_dia/2), 0,
                -(pump_side_thick + pump_side_height)])