chiark / gitweb /
flyscreen-handle: Before P9 strap
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 27 Aug 2016 15:32:52 +0000 (16:32 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 27 Aug 2016 15:32:52 +0000 (16:32 +0100)
flyscreen-handle.scad

index 1d4b979..38597d6 100644 (file)
@@ -57,6 +57,9 @@ P8mid = P9mid + [ 0, outend_height - ourcirc_r*2 ];
 
 P89adj = [ 0, P5[1] - P8mid[1] ];
 
+P8t = P8mid + P89adj;
+P9t = P9mid + P89adj;
+
 P6t = P5 + [ 0, outside_pushh - ourcirc_r*2 ];
 P7 = [ P6t[0] + (P6t[1] - P1[1]) / outside_pushslope,
        P1[1] ];
@@ -100,10 +103,10 @@ module PsHull(ps) {
   }
 }
 
-module LeverSect(P89adjsense, inadj=false){
+module LeverSect(top, inadj=false){
   P3 = inadj ? P3a : P3t;
-  P8 = P8mid + P89adjsense * P89adj;
-  P9 = P9mid + P89adjsense * P89adj;
+  P8 = top ? P8t : P8mid - P89adj;
+  P9 = top ? P9t : P9mid - P89adj;
   diag = inadj ? 0 : atan(outside_push_inadj_slope);
   PsHull([P2,P3,P4]);
   difference(){
@@ -119,11 +122,20 @@ module LeverSect(P89adjsense, inadj=false){
   }
 }
 
+module StrapSect(){
+  translate(P9t) {
+    difference(){
+      circle(r = 4);
+      circle(r = 2);
+    }
+  }
+}
+
 module LeverSectTop(){
   difference(){
     union(){
-      LeverSect(+1, false);
-      for (x = [ P8mid[0] + ourcirc_r - ribble_rad :
+      LeverSect(true, false);
+      for (x = [ P8t[0] + ourcirc_r - ribble_rad :
                 -ribble_rad * 4 :
                 Q0[0] + edge_or + ribble_rad*2 ]) {
        translate([x, P5[1] + ourcirc_r])
@@ -137,7 +149,7 @@ module LeverSectTop(){
 module LeverSectBot(inadj=false){
   P6 = inadj ? P6a : P6t;
   mirror([0,1]) {
-    LeverSect(-1, inadj);
+    LeverSect(false, inadj);
     PsHull([P5,P6,P7]);
     translate([pivot_x,0]) circle(r=pivot_r, $fn=20);
   }
@@ -146,7 +158,9 @@ module LeverSectBot(inadj=false){
 module Demo(){
   translate([0,0,-5]) color("white") ExtrusionSect();
   LeverSectTop();
-  LeverSectBot();
+  translate([0,0,5]) LeverSectBot();
+  color("black") LeverSectBot(true);
+  color("blue") translate([0,0,10]) StrapSect();
 }
 
 module LeverTop(){
@@ -163,5 +177,5 @@ module Test(){
   translate([0,-opening_height - 2,0]) LeverBot(true);
 }
 
-//Demo();
-Test();
+Demo();
+//Test();