From: Ian Jackson Date: Sat, 31 May 2014 20:44:34 +0000 (+0100) Subject: topeak-seatstay-lock: seems maybe printable X-Git-Tag: filamentspool-v2-release~356 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=commitdiff_plain;h=180044a79410d35ca8ff41cbfd4105cf7c11755b topeak-seatstay-lock: seems maybe printable --- diff --git a/topeak-seatstay-lock.scad b/topeak-seatstay-lock.scad index f2b9744..dd87bc3 100644 --- a/topeak-seatstay-lock.scad +++ b/topeak-seatstay-lock.scad @@ -1,8 +1,8 @@ // -*- C -*- -pump_dia = 27; -seatstay_mindia = 14; -seatstay_maxdia = 19; +pump_dia = 27 + 0.5; +seatstay_mindia = 14 + 0.5; +seatstay_maxdia = 19 + 0.5; pump_seatstay_gap = 12.3; pump_seatstay_delta = 0.1; @@ -17,15 +17,19 @@ pin_base = 25; lock_manouvre_thick = 3.5 + 0.5; lock_manouvre_len = 18; lock_hang_width = 17.5; +lock_manouvre_len_smaller = 13; + +body_depth_each = 5; +clatter_gap = 0.5; // fudgeish holes_rotation = 9; -pin_offset = 6; +pin_offset = 7; // computed -body_depth = pin_width + 8; +body_depth = pin_width + body_depth_each*2; module Holes(){ translate([0, -pump_dia/2]); @@ -69,9 +73,15 @@ module Pin(){ translate([-pin_base/2, 0]) square([pin_base, 50]); translate([-pin_width/2, -100]) square([pin_width, 101]); } - translate([-lock_manouvre_thick/2, -pin_workdepth-100, -lock_manouvre_len]) - cube([lock_manouvre_thick, 100, lock_manouvre_len*2]); - translate([- lock_manouvre_thick/2, -pin_workdepth-50, + hull() for (d=[0,10]) { + translate([d*2,-d,0]) + translate([-lock_manouvre_thick/2, + -pin_workdepth-100, + -lock_manouvre_len_smaller]) + cube([lock_manouvre_thick, 100, + lock_manouvre_len + lock_manouvre_len_smaller]); + } + translate([-lock_manouvre_thick/2, -pin_workdepth-50, -lock_hang_width/2]) cube([50, 50, lock_hang_width]); } @@ -89,6 +99,24 @@ module All(){ } } -Demo(); +module Piece(pc){ + translate([0,-pc*4,0]) + intersection(){ + mirror([0,pc,0]) + translate([-200,clatter_gap/2,-200]) cube([400,400,400]); + All(); + } +} + +module PiecesPrint(){ + mirror([0,0,1]) + for (pc=[0,1]){ + Piece(pc); + } +} + +//Demo(); //All(); //Pin(); +//Pieces(); +PiecesPrint();