%!PS-Adobe /mm { 72 mul 25.4 div } def /tan6 0.105104 def /holeside 24 mm def /cutside 27 mm def /holexspacing 4 mm def /holeyspacing holexspacing tan6 mul def /awl { newpath 1.5 0 360 arc fill } def /oneside { newpath -0.5 cutside mul -.6882 cutside mul moveto 0 -.6882 cutside mul holeyspacing 2.5 mul sub lineto 0.5 cutside mul -.6882 cutside mul lineto stroke holexspacing -2.5 mul -.6882 holeside mul awl holexspacing -1.5 mul -.6882 holeside mul holeyspacing sub awl holexspacing -0.5 mul -.6882 holeside mul holeyspacing 2.0 mul sub awl holexspacing 0.5 mul -.6882 holeside mul holeyspacing 2.0 mul sub awl holexspacing 1.5 mul -.6882 holeside mul holeyspacing sub awl holexspacing 2.5 mul -.6882 holeside mul awl } def /pentagonup { gsave oneside 72 rotate oneside 72 rotate oneside 72 rotate oneside 72 rotate oneside grestore } def /pentagondown { gsave 180 rotate oneside 72 rotate oneside 72 rotate oneside 72 rotate oneside 72 rotate oneside grestore } def /columnup { gsave pentagonup 0 -45 mm translate pentagonup 0 -45 mm translate pentagonup 0 -45 mm translate pentagonup 0 -45 mm translate pentagonup grestore } def /columndown { gsave pentagondown 0 -45 mm translate pentagondown 0 -45 mm translate pentagondown 0 -45 mm translate pentagondown 0 -45 mm translate pentagondown 0 -45 mm translate pentagondown grestore } def % print instructions ... /Times-Roman findfont 10 scalefont setfont 6 mm 274 mm moveto (Duodecahedral juggling ball) show 6 mm 270 mm moveto (approx 60mm diam, 90 grams) show 6 mm 266 mm moveto (http://www.pjb.com.au/jug) show 28 mm 233 mm translate columnup 38 mm 25 mm translate columndown 38 mm -25 mm translate columnup 38 mm 25 mm translate columndown 38 mm -25 mm translate columnup showpage % side = 1 % centre to apex = 0.85065080834964990064 % centre to midpoint of side = 0.68819096023263259809 % apex to midpoint of opposite side = 1.5388417685822823877 % height of shoulder apex above baseline = 0.95105651629483811682 % overhang of shoulder beyond base side = 0.30901699437591811925