chiark / gitweb /
topeak-mtx-tortec-expeditionrack-adapter: fix elevations
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 5 Nov 2022 12:33:44 +0000 (12:33 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 5 Nov 2022 12:33:44 +0000 (12:33 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
topeak-mtx-tortec-expeditionrack-adapter.scad

index 67b6bb2e42f7189339dc4210cc8246099c10263d..4f2170391de834803ab56c9614750d230cb6a3be 100644 (file)
@@ -18,7 +18,8 @@ rack_width_inner = 115.86 - 1.0; // between insides of rails
 rear_elevation_nominal = 10.04;
 // ^ top of rack to bottom of bracket, at rack cross tube (fam)
 rear_to_front_distance = 230; // rack cross tube (fam) to very front end
-rear_to_cross_rail = 9.65; // bolt centre to rail centre, rail to rear
+rear_to_cross_rail = 35.05; // bolt centre to rail centre, rail to rear
+rear_bolt_to_front_bolt = 155.4;
 
 general_gap_y = 1.0;
 
@@ -84,6 +85,8 @@ brk_bolt_nut_top_y = -brk_nearbolt_recess_depth
                       
 brk_bolt_nut_r = brk_bolt_nut_across_flats/2 / cos(360/12);
 
+function elevation_of(z) = rear_elevation_nominal - z * rack_shear_ratio;
+
 echo(rack_shear_ratio);
 
 module GraspElevation(){
@@ -316,11 +319,14 @@ module Principal(){
 
 module Front(){ ////toplevel
   // xxx elevation is wrong
-  Principal($elevation_nominal=0, $foreaftmaint_dz=0);
+  Principal($elevation_nominal=
+           elevation_of(rear_to_cross_rail + rear_bolt_to_front_bolt),
+           $foreaftmaint_dz= 0);
 }
 
 module Rear(){ ////toplevel
-  Principal($elevation_nominal=rear_elevation_nominal,
+  Principal($elevation_nominal=
+           elevation_of(rear_to_cross_rail),
            $foreaftmaint_dz= rear_to_cross_rail);
 }