body_depth_each = 5;
clatter_gap = 0.5;
+roof_extent = 7;
+roof_thick = 2;
+
// fudgeish
cut_rotation = 2;
pin_y_offset = 5.5;
pin_x_offset = 0.5;
ridge_rotation = 8.5;
+lock_hang_ratio = 7;
// computed
}
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=roof_thick){
+ difference(){
+ hull(){
+ BodyPlan();
+ translate([0,-roof_extent,0]) BodyPlan();
+ }
+ Holes();
+ }
}
}
}
translate([-pin_width/2, -100]) square([pin_width, 101]);
}
hull() for (d=[0,10]) {
- translate([d*1.5,-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]);
- translate([-lock_manouvre_thick/2, -pin_workdepth-lock_manouvre_thick/2+0.1,
- -lock_hang_width/2])
- rotate([0,90,0])
- cylinder(r=lock_manouvre_thick/2, h=50, $fn=20);
}
}
}
module PiecePrint(pc){
- rotate([0,180,0])
+ rotate([0,0,90]) rotate([0,180,0])
Piece(pc,4);
}