crossoff = tile_hard_edge_hole_dist + POST_TCROSSSZ/2;
cidsz = [ thehd[0], size[1] - 2*crossoff ];
cidszr = [ cidsz[0], min(cidsz[1], 50) ];
+ translate( concat(botleft + [0, crossoff] + (cidsz-cidszr)/2, [0]) )
+ Commitid_BestCount(cidszr);
difference(){
mirror([0,0,1]) {
translate(concat(botleft + [test_edge,test_edge], [test_tile_th]))
}
shufflesz = max(test_edge, tile_hard_edge_hole_dist)*2;
minkowski(){
- Machine();
+ MachineEnvelope();
cube(shufflesz, center=true);
}
}
Machine_Curves();
}
+module MachineEnvelope(){
+ // used for testing
+ p_arm_bl = [-cutout_tile11_x, -cutout_tile01_y];
+ y_arm_t = cutout_tile11_y;
+ p_crv_fl = p_arm_bl + [rearedge_len, -frontcurve_avoid_y];
+ y_crv_b = y_arm_t + rearcurve_avoid_y;
+
+ translate([0,0,-50]) linear_extrude(height= 100){
+ translate(p_arm_bl) square([400, y_arm_t] - p_arm_bl);
+ translate(p_crv_fl) square([400, y_crv_b] - p_crv_fl);
+ }
+}
+
function Rectangle_corners(c0, sz) =
// returns the corners of a rectangle from c0 to c0+sz
// if sz is positive, the corners are anticlockwise starting with c0
//Machine_Curves();
//Machine();
//FitTest();
+//MachineEnvelope();