+ br = baseplate_width_rad;
+ brs =
+ sqrt( pow(pump_side_outer_rad, 2)
+ -pow(pump_main_dia/2 + baseplate, 2) );
+ echo(brs);
+
+ difference(){
+ intersection(){
+ translate([0,100,0])
+ rotate([90,0,0])
+ linear_extrude(height=200)
+ PumpSideElevation();
+ union(){
+ translate([0,0,-100])
+ linear_extrude(height=200)
+ PumpSidePlan();
+ // baseplate
+ hull(){
+ mirror([0,0,1])
+ translate([-xm, -brs, 0])
+ cube([pump_main_dia/2 + pump_side_width,
+ brs*2,
+ 1]);
+ translate([-xm, -br, -pump_side_total_height])
+ cube([xm,
+ br*2,
+ pump_protr_flat]);
+ }
+ }
+ }
+ translate([-(baseplate + pump_main_dia/2), 0,
+ -(pump_side_thick + pump_side_height)])
+ cylinder(r=pump_main_dia/2, h=200);