chiark / gitweb /
topeak-mtx-tortec-expeditionrack-adapter: wip
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 5 Nov 2022 02:06:13 +0000 (02:06 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 5 Nov 2022 02:06:13 +0000 (02:06 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
topeak-mtx-tortec-expeditionrack-adapter.scad

index a75f3a74059b178bb9ab528fdd0513ad10b112ea..06f295f7f156490f04bf48bb21f01f0b00c00e0d 100644 (file)
@@ -18,7 +18,7 @@ rack_width_inner = 115.86 + 1.0; // between insides of rails
 rear_elevation_nominal = 10.04;
 // ^ top of rack to bottom of bracket, at rear bolt hold
 rear_to_front_distance = 230;
-rear_to_cross_rail = 9.65; // bolt centre to rail centre, rail to rear
+rear_to_cross_rail = 19.65; // bolt centre to rail centre, rail to rear
 
 general_gap_y = 1.0;
 
@@ -55,6 +55,7 @@ $fs=1;
 // calculated
 
 main_sz_z = beside_strap_sz*2 + strap_w;
+main_sz_x_fam = main_sz_y;
 
 brk_bottom_y = -brk_recess_actual;
 adapt_main_top_y = brk_bottom_y + general_gap_y;
@@ -167,6 +168,13 @@ module BoltHole(){
   }
 }
 
+module AsForeAftMaint(){
+  if ($foreaftmaint_dz) {
+    translate([ 0, $foreaftmaint_rail_y, $foreaftmaint_rail_z ])
+      children();
+  }
+}
+
 module Principal(){
   // calculated
   $rack_rail_y = brk_bottom_y - $elevation_nominal
@@ -210,6 +218,21 @@ module Principal(){
            rectfromto([ 0, -50 ], [ 50, 50 ]);
        }
       }
+
+      AsForeAftMaint(){
+       linextr_x_yz(-main_sz_x_fam/2,
+                    +main_sz_x_fam/2){
+         hull(){
+           for (y = [-rack_rail_dia/2 + grasp_large_r,
+                     (-$foreaftmaint_rail_y
+                      + adapt_main_top_y - grasp_large_r)
+                     ])
+             for (dx= [-1,+1] * rack_rail_dia/2)
+               translate([ y, dx ])
+                 circle(r= grasp_large_r);
+         }
+       }
+      }
     }
 
     RackShear() linextr(-10, main_sz_z+10) {
@@ -227,15 +250,13 @@ module Principal(){
     }
 
     // Distance from bolt hole, in backwards direction
-    if ($foreaftmaint_dz) {
-      translate([ 0, $foreaftmaint_rail_y, $foreaftmaint_rail_z ]){
-       linextr_x_yz(+rack_rail_x,
-                    -rack_rail_x) {
-         hull(){
-           for (dy=[0,50]) {
-             translate([-dy,0])
-               circle(r= rack_rail_dia/2 + foreaftmaint_r_slop);
-           }
+    AsForeAftMaint(){
+      linextr_x_yz(+rack_rail_x,
+                  -rack_rail_x) {
+       hull(){
+         for (dy=[0,50]) {
+           translate([-dy,0])
+             circle(r= rack_rail_dia/2 + foreaftmaint_r_slop);
          }
        }
       }