6 houterrad = hinnerrad + hoopthick;
10 blockwidth = hcentredist*2 + 6;
14 ziglen = hcentredist/2;
25 module Oval(centredist, rad) {
27 translate([-centredist/2,0,0]) circle(r=rad);
28 translate([+centredist/2,0,0]) circle(r=rad);
35 Oval(hcentredist, houterrad);
36 translate([0, (blockdepth + hoopthick)/2 + hinnerrad])
38 blockdepth + hoopthick],
41 Oval(hcentredist, hinnerrad);
46 translate([0,0, -height/2])
47 linear_extrude(height=20)
52 imax = ceil(height*2 / ribheight);
53 for (i=[-imax:imax]) {
55 translate([-ribdepth/2,
59 [ribdepth, -ribheight],
60 [ribdepth, +ribheight]]);
62 square([1, height*2], center=true);
67 module Division(biggerpi) {
68 xgap = feedxgap * biggerpi;
69 zgap = feedzgap * biggerpi;
72 translate([0, 0, zgap/2 * (1 - 2*biggerpi)]) {
73 translate([-ziglen + xgap/2, -100, 0])
77 translate([blockwidth/2 - blockoverlapcnr, -50, -50])
78 cube([100, 100, 100]);
80 translate([50, houterrad + blockdepth/2 + ribsgap * biggerpi, 0])
82 linear_extrude(height=100)
110 // color("blue") B();