module SlopeTrimElevation(){
far_corner_nom = [ lock_0y + lock_d/2, main_h ];
round_centre = far_corner_nom + lock_d/2 * [0,1];
- translate(round_centre) circle(r= lock_d/2);
+ hull(){
+ translate(round_centre) circle(r= lock_d/2);
+ translate([ lock_0y - lock_d/2, total_h ]) square([ lock_d + clip_d, 1 ]);
+ translate(far_corner_nom) square([clip_d*2, 1]);
+ }
}
+module SlopeTrim(){
+ rotate([0,90,0])
+ rotate([0,0,90])
+ translate([0,0, -lock_w])
+ linear_extrude(convexity=100, height=lock_w*2)
+ SlopeTrimElevation();
+}
+
module MainPositive(){
difference(){
union(){
difference(){
MainPositive();
ThroughHoles();
+ SlopeTrim();
}
-// linear_extrude(convexity=100
- rotate([0,90,0])
- rotate([0,0,90])
- SlopeTrimElevation();
}
module TestTopEdge(){ ////toplevel