chiark / gitweb /
poster-tube-lid: catch: wip rework entirely
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 27 Nov 2018 21:33:18 +0000 (21:33 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 27 Nov 2018 21:33:18 +0000 (21:33 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
poster-tube-lid.scad

index 7002950edeaac5a1660066f12c1e9d2d60f42a51..011383f72baefb60f2d0f86a79b58bbe81d56152 100644 (file)
@@ -234,9 +234,11 @@ cppD = cppC + [0,-1] * catch_strap_width;
 // 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] ];
@@ -549,6 +551,34 @@ module StrapMount(){ ////toplevel
   }
 }
 
+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);
@@ -597,7 +627,7 @@ module CatchCoreProfile(){ ////toplevel
 
 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])