// -*- C -*-
-pump_dia = 27 + 0.5;
+pump_dia = 27 + 0.9;
seatstay_mindia = 14 + 0.5;
-seatstay_maxdia = 19 + 0.5;
+seatstay_maxdia = 19 + 0.7;
pump_seatstay_gap = 12.3;
pump_seatstay_delta = 0.1;
pump_ridge_width = 8 + 2.0;
-body_thick_x = 5;
-body_thick_y = 5;
+body_thick = 5;
-pin_workdepth = 16;
-pin_width = 11 + 0.5;
-pin_thick = 3 + 0.6;
+pin_workdepth = 16 - 1.0;
+pin_width = 11 + 1.0;
+pin_thick = 3 + 0.7;
pin_base = 25;
-lock_manouvre_thick = 3.5 + 0.5;
+lock_manouvre_thick = 3.7 + 0.6;
lock_manouvre_len = 18;
lock_hang_width = 17.5;
lock_manouvre_len_smaller = 13;
cut_rotation = 2;
holes_rotation = 9;
-pin_offset = 7;
+pin_y_offset = 5.5;
+pin_x_offset = 0.5;
ridge_rotation = 8.5;
// computed
rotate(-ridge_rotation + holes_rotation)
translate([-50, -pump_ridge_width/2])
square([50, pump_ridge_width]);
- circle(r=pump_dia/2);
+ circle(r=pump_dia/2, $fn=80);
}
translate([+(pump_seatstay_gap/2 + seatstay_mindia/2),
pump_dia/2 -seatstay_maxdia/2 -pump_seatstay_delta]) {
hull(){
for (ud=[-1,1])
translate([0, ud * (seatstay_maxdia-seatstay_mindia)/2])
- circle(r=seatstay_mindia/2);
+ circle(r=seatstay_mindia/2, $fn=50);
}
}
}
}
module BodyPlan(){
- hull(){
- for(x=[-1,1]) for(y=[-1,1])
- translate([x*body_thick_x, y*body_thick_y])
- Holes(true);
+ minkowski(){
+ circle(body_thick);
+ hull()
+ Holes(true);
}
}
}
module Pin(){
- translate([0, pin_offset, 0]) rotate([0,90,0]){
+ translate([pin_x_offset, pin_y_offset, 0]) rotate([0,90,0]){
translate([0, 0, -pin_thick/2])
linear_extrude(height=pin_thick){
translate([-pin_base/2, 0]) square([pin_base, 50]);
}
}
-module PiecesPrint(){
+module PiecePrint(pc){
rotate([0,180,0])
- for (pc=[0,1]){
- Piece(pc,4);
- }
+ Piece(pc,4);
+}
+
+module PiecesPrint(pcs=[0,1]){
+ for (pc=pcs){
+ PiecePrint();
+ }
}
module Demo(){
//Pin();
//Pieces();
PiecesPrint();
+//PiecePrint(0);
+//PiecePrint(1);