X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;ds=sidebyside;f=topeak-seatstay-lock.scad;h=66c00d42370d41bf3817da88bd14ffb2682faa4d;hb=5bee28596c83e253ddf2dd94ab771bda694d7f50;hp=f5265e670ac76a70ee79c2f5f1aaa9004516c0f3;hpb=002d3523b5e55cd62b9a111227846cdad9407f95;p=reprap-play.git diff --git a/topeak-seatstay-lock.scad b/topeak-seatstay-lock.scad index f5265e6..66c00d4 100644 --- a/topeak-seatstay-lock.scad +++ b/topeak-seatstay-lock.scad @@ -29,6 +29,7 @@ holes_rotation = 9; pin_y_offset = 5.5; pin_x_offset = 0.5; ridge_rotation = 8.5; +lock_hang_ratio = 7; // computed @@ -65,11 +66,21 @@ module BodyPlan(){ } module Body(){ - translate([0,0,-body_depth/2]) + translate([0,0,body_depth/2])mirror([0,0,1]){ linear_extrude(height=body_depth){ - difference(){ - BodyPlan(); - Holes(); + difference(){ + BodyPlan(); + Holes(); + } + } + linear_extrude(height=2.5){ + difference(){ + hull(){ + BodyPlan(); + translate([0,-7,0]) BodyPlan(); + } + Holes(); + } } } } @@ -82,16 +93,13 @@ module Pin(){ translate([-pin_width/2, -100]) square([pin_width, 101]); } hull() for (d=[0,10]) { - translate([d*2,-d,0]) + translate([d*lock_hang_ratio,-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]); } } @@ -111,11 +119,14 @@ module Piece(pc,interval){ } } -module PiecesPrint(){ +module PiecePrint(pc){ rotate([0,180,0]) - for (pc=[0,1]){ - Piece(pc,4); - } + Piece(pc,4); +} + +module PiecesPrint(){ + PiecePrint(0); + PiecePrint(1); } module Demo(){ @@ -129,3 +140,5 @@ module Demo(){ //Pin(); //Pieces(); PiecesPrint(); +//PiecePrint(0); +//PiecePrint(1);