3 // suitable for masking things within radius sqrt(2) only
4 module FArcSegment_mask(beta) {
5 for (i=[0 : 0.75 : 3]) {
9 [cos(beta/4), sin(beta/4)]]);
13 module FArcSegment(xc,yc,inrad,outrad,alpha,delta) {
17 circle(r=outrad, $fn=70);
18 circle(r=inrad, $fn=70);
20 rotate(alpha) scale(outrad*2) {
21 FArcSegment_mask(delta);
27 module rectfromto(a,b) {
29 translate([min(a[0], b[0]), min(a[1], b[1])])
30 square([abs(ab[0]), abs(ab[1])]);
32 module circleat(c,r) { translate(c) circle(r); }
33 module linextr(z0,z1) {
35 linear_extrude(height=z1-z0)