]);
}
-module PlugHookTonguePlan(){
+module TonguePlan(){
difference(){
rectfromto([ -plug_entry_gap - 1, z_hook_min ],
[ tongue_len, z_laptop_base ]);
}
}
+module FarHookPlan(){
+ TonguePlan();
+}
+
module RotateIntersect(n=6){
intersection_for (r = [0:n-1]) {
rotate([r/n * 360,0,0])
linextr_y_xz(-hook_th/2,
+hook_th/2)
- PlugHookTonguePlan();
+ TonguePlan();
}
}
}
module DemoPlan() { ////toplevel
- translate([0,0,-5]) color("grey") PlugHolderPlan();
+ translate([0,0,-10]) color("grey") PlugHolderPlan();
PlugMainPlan();
+ translate([0,0,-5]) color("blue") {
+ PlugHookHookPlan();
+ TonguePlan();
+ }
+
+ translate([0,40,0]) {
+ mirror([1,0,0]) {
+ FarHookPlan();
+ }
+ }
}