//
// SomethingPositive is the representation of the object to be retained
// Retaining walls will be made up to its z=0.
+//
+// It can use $well_surround_cutout_only for parts that ought only to
+// be cut out and shouldn't generate walls.
module WellSurround(
// Amount by which the object protrudes above z==0
half_height,
translate(concat(offset, [0])) linextr(-10, dz){
offset($fn=8, r = wall)
projection(cut=false)
+ let($well_surround_cutout_only = false)
children(0);
}
}
translate(concat(offset, [0])) translate([0, 0, dz]) {
+ let($well_surround_cutout_only = true)
children(0);
}
}
// business end: 1/4" square driver protruding from head
- translate([ -74.2, 0, 0])
+ if ($well_surround_cutout_only)
+ translate([ -74.2, 0, 0])
linextr_y_xz(-(head_y/2 + 9.0), 0)
circle(r = 8.3 /2);
}