From: Ian Jackson Date: Fri, 4 Nov 2022 23:59:15 +0000 (+0000) Subject: topeak-mtx-tortec-expeditionrack-adapter: wip X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=2ff6625b0d6329d6ab78494c4fdd0d59ab283df5;p=reprap-play.git topeak-mtx-tortec-expeditionrack-adapter: wip Signed-off-by: Ian Jackson --- diff --git a/topeak-mtx-tortec-expeditionrack-adapter.scad b/topeak-mtx-tortec-expeditionrack-adapter.scad index a66207a..ffb437a 100644 --- a/topeak-mtx-tortec-expeditionrack-adapter.scad +++ b/topeak-mtx-tortec-expeditionrack-adapter.scad @@ -32,6 +32,9 @@ rack_rail_outer_x = -(rack_width_inner/2 + rack_rail_dia); grasp_large_r = (rack_rail_dia + grasp_sz)/2; grasp_large_x = rack_rail_outer_x + grasp_large_r; +block_x = grasp_large_x + grasp_large_r/2; +block_y_min = adapt_main_top_y - main_sz_y; + module GraspElevation(){ hull(){ translate([ grasp_large_x, adapt_main_top_y - grasp_large_r ]) @@ -46,8 +49,27 @@ module GraspElevation(){ } module BlockElevation(){ - rectfromto([ -rack_width_inner/2, adapt_main_top_y ], - [ +rack_width_inner/2, adapt_main_top_y - main_sz_y ]); + rectfromto([ +block_x, adapt_main_top_y ], + [ -block_x, block_y_min ]); +} + +module GraspFixingElevation(){ + intersection(){ + mirror([1,0]) GraspElevation(); + union(){ + rectfromto([0, $rack_rail_y], + [rack_width_inner, 50]); + intersection(){ + translate([ rack_rail_x, $rack_rail_y ]) + circle(r = rack_width_inner/2 - rack_rail_x, $fa=1); + polygon([ [ 0, 0 ], + [ rack_width_inner/2, 0 ], + [ rack_width_inner/2, $rack_rail_y - rack_rail_dia/2 ], + [ -block_x, block_y_min ], + [ 0, block_y_min ]]); + } + } + } } module Principal(){ @@ -59,7 +81,7 @@ module Principal(){ linextr(0, main_sz_z){ GraspElevation(); BlockElevation(); - mirror([1,0]) GraspElevation(); + GraspFixingElevation(); } linextr(-10, main_sz_z+10) {