# the curvblock object # 7/95 pat flynn # # x=0 polygon i1 = poly( list( vector(0,0,0), vector(0,5.5,0), vector(0,5.5,2.75), vector(0,0,2.75)),FALSE); # y=0 polygon i2 = poly(list(vector(0,0,0), vector(6.75,0,0), vector(6.75,0,2.75), vector(0,0,2.75)),FALSE); # z=0 polygon i3 = poly(list(vector(0,0,0), vector(6.75,0,0), vector(6.75,1.25,0), vector(4,1.25,0), vector(4,4,0), vector(1.25,4,0), vector(1.25,5.5,0),vector(0,5.5,0), vector(0,0,0)),FALSE); # x=6.75 polygon i4 = poly(list(vector(6.75,0,0), vector(6.75,1.25,0), vector(6.75,1.25,2.75), vector(6.75,0,2.75)),FALSE); # x = 4 polygon i5 = poly(list(vector(4,1.25,0), vector(4,4,0), vector(4,4,1.25), vector(4,1.25,1.25)),FALSE); # x=1.25 polygon i6 = poly(list(vector(1.25,1.25,1.25), vector(1.25,4,1.25), vector(1.25,4,0), vector(1.25,5.5,0), vector(1.25,5.5,2.75), vector(1.25,1.25,2.75)),FALSE); # y = 5.5 polygon i7 = poly(list(vector(0,5.5,0), vector(0,5.5,2.75), vector(1.25,5.5,2.75), vector(1.25,5.5,0)),FALSE); # y = 4 polygon i8 = poly(list(vector(1.25,4,0), vector(1.25,4,1.25), vector(4,4,1.25), vector(4,4,0)),FALSE); # y = 1.25 polygon i9 = poly(list(vector(6.75,1.25,0), vector(4,1.25,0), vector(4,1.25,1.25), vector(1.25,1.25,1.25), vector(1.25,1.25,2.75), vector(6.75,1.25,2.75)),FALSE); # z=1.25 polygon i10 = poly(list(vector(1.25,1.25,1.25), vector(4,1.25,1.25), vector(4,4,1.25), vector(1.25,4,1.25)),FALSE); # z = 2.75 polygon (L-shaped. Note cylinder isn't subtracted yet.) i11 = poly(list(vector(0,0,2.75), vector(6.75,0,2.75), vector(6.75,1.25,2.75), vector(1.25,1.25,2.75), vector(1.25,5.5,2.75), vector(0,5.5,2.75)),FALSE); # Note: negation needed because irit seems to create an inside-out object. a = - mergepoly(list(i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11)); # resolution=128; c = cylin(vector(4,-1,2.75),vector(0,5,0),1.375); b=a-c; save("curvblock",convex(b));