// catch assembly stalk and so on
cppF = [ cppg[0] - catch_stem_stalk_eff_bend_rad, cppd[1] ];
-cpp4 = [ cppg[0] - catch_stem_lenm, cppd[1] ] + [1,-1] * catch_cr;
+cpp4 = [ cppg[0] - catch_stem_len, cppd[1] ] + [1,-1] * catch_cr;
cpp5 = [ cpp4[0], cppC[1] + catch_cr ];
cpp2 = cpp5 + [-1,0] * (catch_cr * 2 + catch_stalk_base_width);
+cpp2r = cpp2 + [1,0] * catch_cr;
+cpp2d = cpp2 + [0,-1] * catch_cr;
cpp3 = [ cpp2[0] + catch_cr * 2, cppd[1] - catch_cr ];
cppA = [ -cppxC, cpp9[1] ];
cppE = [ cppA[0], cppD[1] ];
}
}
+module CatchAssemblyCoreProfile(){
+ difference(){
+ union(){
+ hull(){
+ translate(cpp3) circle(r= catch_cr);
+ polygon([ cpp3,
+ cpp2r,
+ cpp5,
+ cpph,
+ cppd
+ ]);
+ }
+ }
+ hull(){
+ translate(cpp4) circle(r= catch_cr);
+ translate(cpp5) circle(r= catch_cr);
+ translate(cpp7) circle(r= catch_cr);
+ polygon([cpp4,
+ cppg,
+ cpph,
+ cpp9,
+ cpp10,
+ cpp11,
+ ]);
+ }
+ }
+}
+
module CatchCoreProfile(){ ////toplevel
hull(){
translate(cppB) circle(r= catch_knob_dia/2);
module CatchCore(){ /////toplevel
linear_extrude(height=catch_strap_thick, convexity=10)
- CatchCoreProfile();
+ CatchAssemblyCoreProfile();
translate(concat(cppB,[0])) hull(){
translate([0,0, catch_knob_height - catch_knob_dia/2])