cpp3 = [ cpp2[0], cpp4[1] ];
cpp5 = [ cpp0[0] - catch_stem_len,
-catch_stem_h ];
+cpp6 = [ cpp5[0], catch_cr ];
cpp7 = cppB + [1,-1] * catch_knob_dia/2
+ [ catch_stem_beside_gap, -catch_stem_below_gap ]
+ [ 0, -catch_pin_height ]
}
module CatchCoreProfile(){ ////toplevel
+ hull(){
+ translate(cppB) circle(r= catch_knob_dia/2);
+ polygon([cpp4,
+ cppB,
+ cpp3]);
+ }
+ translate(cpp8) circle(catch_cr);
difference(){
polygon([ cpp4,
cppB,
cpp7,
cpp5,
], convexity=10);
+ hull(){
+ translate(cpp7) circle(r= catch_cr);
+ polygon([ cpp7,
+ cpp5,
+ cpp11 ]);
+ }
+ hull(){
+ translate(cpp6) circle(catch_cr);
+ polygon([ cppA,
+ cpp0,
+ cpp1 ]);
+ }
}
}