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

index 399658280d41e52e740629de1480aced485fed1c..26c087fb722c8570fdf966213ba5522a307a6135 100644 (file)
@@ -4,6 +4,8 @@
 // rack_*: the Tortec rack
 // adapt_*: the adapter, ie this file
 
+include <utils.scad>
+
 brk_recess_actual = 5.20;
 
 rack_rail_dia = 10.40 + 0.50;
@@ -14,6 +16,7 @@ rear_to_front_distance = 230;
 
 general_gap_y = 1.0;
 
+main_sz_z = 20; // xxx
 main_sz_y = 20;
 grasp_sz = 12;
 
@@ -34,12 +37,29 @@ module Principal(){
   $rack_rail_y = brk_bottom_y - $elevation_nominal
     - general_gap_y  - rack_rail_dia/2;
 
-  hull(){
-    translate([ grasp_large_x, adapt_main_top_y - grasp_large_r ])
-      circle(grasp_large_r);
+  difference(){
+    linextr(0, main_sz_z){
+      hull(){
+       translate([ grasp_large_x, adapt_main_top_y - grasp_large_r ])
+         circle(grasp_large_r);
       
-    translate([ grasp_large_x, $rack_rail_y - rack_rail_dia/2 ])
-      circle(grasp_large_r);
+       translate([ grasp_large_x, $rack_rail_y - rack_rail_dia/2 ])
+         circle(grasp_large_r);
+
+       translate([ grasp_large_x, $rack_rail_y + rack_rail_dia/2 ])
+         circle(grasp_large_r);
+      }
+    }
+
+    linextr(-10, main_sz_z+10) {
+      translate([ rack_rail_x, $rack_rail_y ]){
+       hull(){
+         for (dx = [-rack_rail_dia, 0])
+           translate([dx, 0])
+             circle(r= rack_rail_dia/2);
+       }
+      }    
+    }
   }
 }