/** This makes a little bowl holder for little IKEA bowls for 3-D printing in TPU (a flexible material). */ res = 254/inch wallThickness = 1.3 mm bottomHeight = 1.2 mm topDiamInner = 49 mm //topDiamInner = 10.5 mm topDiamOuter = topDiamInner + 2 wallThickness bottomDiamOuter = topDiamOuter + .3 cm bottomDiamInner = bottomDiamOuter - 2 wallThickness topHeight = 22 mm bottom = callJava["frink.graphics.VoxelArray", "makeCylinder", [0,0,0,0,0,-bottomHeight res, bottomDiamOuter/2 res]] outerSides = callJava["frink.graphics.VoxelArray", "makeTaperedCylinder", [0,0,0,0,0,topHeight res, bottomDiamOuter/2 res, topDiamOuter/2 res]] innerSides = callJava["frink.graphics.VoxelArray", "makeTaperedCylinder", [0,0,0,0,0,topHeight res, bottomDiamInner/2 res, topDiamInner/2 res]] outerSides.remove[innerSides] v = bottom.union[outerSides] v.projectX[undef].show["X"] v.projectY[undef].show["Y"] v.projectZ[undef].show["Z"] filename = "ikeaBowlHolder.obj" print["Writing $filename..."] w = new Writer[filename] w.println[v.toObjFormat["cup", 1/(res mm)]] w.close[] println["done."]