interlock_dia = 10;
interlock_fine = 0.66;
+interlock_fine_slope = 1.0;
interlock_fine_lenslop = 1.0;
demo_slop = 0.1;
module InterlockEdge(left_cnr, right_cnr, negative=0, nlobes=2) {
plusth = negative * 1.0;
+ protr = interlock_fine + interlock_sq_adj;
+
+ z2 = -tile_th/2;
+ z1 = -tile_th/2 - protr / interlock_fine_slope;
+ z3 = -tile_th/2 + protr / interlock_fine_slope;
INREFFRAME(left_cnr, right_cnr) {
- translate([0, 0, plusth]){
- mirror([0,0,1]){
- linear_extrude(height=tile_th+plusth*2, convexity=10){
- InterlockEdgePlan(negative, nlobes, length);
- }
- }
+ for (vsect = [ // zstart zend ystart, yend
+ [ -tile_th-plusth, plusth, 0, 0],
+ //[ z1, z2, 0, protr],
+ //[ z2, z3, protr, 0],
+ ]) {
+ translate([0, 0, vsect[0]])
+ linear_extrude(height=vsect[1]-vsect[0], convexity=10)
+ InterlockEdgePlan(negative, nlobes, length);
}
}
}