retain_empir_stalkw = 1.0;
retain_rad = 1.5;
+topprotr_rad = 0.35;
+
bot_overlap = 5;
bot_w = 3;
handle_x1 = handle_x0 + bot_w + handle_w;
module InsertSection(){
- translate([-ins_orad, 0]) square([ins_th, opening_topprotr]);
+ hull(){
+ translate([-ins_orad, 0]) square([ins_th, 0.1]);
+ translate([-ins_irad - topprotr_rad,
+ opening_topprotr - topprotr_rad])
+ circle(r=topprotr_rad, $fn=10);
+ }
translate([0, -ins_orad]) square([ins_irad+1, ins_th]);
intersection(){
translate([0.1,0.1]) mirror([1,1]) square([100,100]);
difference(){
circle(r=retain_rad + cutout_gap, $fn=20);
rotate(180 + retain_empir_angle/2)
- square([100, retain_empir_stalkw]);
+ translate([0, -retain_empir_stalkw])
+ square([100, retain_empir_stalkw*2]);
}
}
}
-difference(){
+module WithRetainSection(){
+ difference(){
+ InsertSection();
+ RetainCutout();
+ }
+ HandleSection();
+ RetainSection();
+}
+
+module BasicSection(){
InsertSection();
- RetainCutout();
+ HandleSection();
}
-HandleSection();
-color("red") RetainSection();
+
+module Demo(){
+ difference(){
+ InsertSection();
+ RetainCutout();
+ }
+ HandleSection();
+ color("red") RetainSection();
+}
+
+module Test(){
+ linear_extrude(height=2) WithRetainSection();
+}
+
+//Demo();
+//WithRetainSection();
+BasicSection();
+//Test();