lock_d = 28.0 + 0.5;
main_h = 45.0;
backflange_d = 12;
+backflange_hole_dy = -1;
lockshaft_dia = 14.35;
cliprecess_h = 16;
tube_or = tube_dia/2 + tube_th;
back_ohw = back_gap/2 + backflange_th;
-backflange_ymin = tube_or+backflange_d;
+backflange_ymin = tube_dia/2 + backflange_d;
lock_0y = tube_dia/2 + lock_d/2 + midweb_d;
lock_0x = lock_w/2 - lock_d/2;
DividePlan(xl);
}
-module MainPlan(){
+module DivideHook(){ ////toplevel
+ w = tube_th/2;
+ d = divide_gap;
+
+ translate([-1,0] * (w + d + w)){
+ for (sx=[-1,+1])
+ translate([-(w + w+d) * sx, 0]) circle(r= w);
+ difference(){
+ circle(r = 3*w + d);
+ circle(r = w + d);
+ translate([-10*w, -10*w]) square([20*w, 10*w]);
+ }
+ }
+}
+
+module DivideInPlace(){
+ rotate([0,0, -divide_angle])
+ translate([ -tube_dia/2 -tube_th/2, 0])
+ children();
+}
+
+module MainPlan(){ ////toplevel
difference(){
union(){
difference(){
for (z=[ 1/4, 3/4 ]) {
rotate([0,0, backflange_angle])
ThroughHole( r,
- -tube_or -0.5*backflange_d,
+ -tube_dia/2 -0.5*backflange_d + backflange_hole_dy,
total_h * z,
x);
}
back_ohw + 0.25);
}
+module DividePlanDemo(){ ////toplevel
+ DividePlan();
+}
+
+module DivideDemo(){ ////toplevel
+ color("black") translate([0,0,-2]) MainPlan();
+ DivideInPlace() DivideHook();
+}
+
//MainPlan();
//ClipElevationPositive();
//ClipElevation();
//%ThroughHoles();
//TestTopEdge();
//TestClipBoltHole();
-//DividePlan();
//Bracket();