restart:with(plots):with(plottools):
trunk:=polygonplot([[0,0],[5,0],[5,35],[0,35]],color=brown):
branch:=plot([[4.5,35],[5.5,40],[10,50]],color=brown,thickness=4):
branch2:=plot([[.5,35],[-.5,40],[-5,50]],color=brown,thickness=4):
branch3:=plot([[2.5,35],[1.75,42.5],[1,50]],color=brown,thickness=4):
branch4:=plot([[0,32],[-4,34.5],[-7,35]],color=brown,thickness=4):
branch5:=plot([[5,30],[7,27.5],[10,25]],color=brown,thickness=4):
sun:=disk([38,45],5,color=yellow):
p1:=display([sun,branch,branch2,branch3,branch4,branch5,trunk],scaling=constrained):
eye:=disk([0,0],2,color=white):
pupil:=disk([20.75,25.25],1,color=black):
mouth:=plot([[22.25,22.5],[18,22.5]],color=black):
head:=disk([18,25],5,color=tan):
nose:=polygon([[22.5,23],[24,23],[23,25]],color=tan):
p2:=display([pupil,translate(eye,20,26),mouth,head,nose],scaling=constrained):
neck:=polygon([[19,21],[17,21],[17,18],[19,18]],color=tan):
body:=ellipse([18,13],5,6.5,color=gray,filled=true):
t:=pieslice([18,28],4.5,0..Pi,color=black):
b:=plot([[13.5,28],[25,28]],color=black):
hat:=display(t,b):
p3:=display([hat,p2,body,neck],scaling=constrained):
p4:=display([p1,p3],scaling=constrained):
leg:=polygon([[17,8],[19,8],[19,3],[17,3]],color=black):
foot:=disk([18,1.5],1.75,color=brown):
p5:=display(p4,foot,leg):
arm:=polygon([[19,14.25],[18,12.25],[24,4.25],[25,5.5]],color=gray):
hand:=disk([24.1,5.8],1.5,color=tan):
p6:=display([hand,arm],scaling=constrained):
p7:=display(p6,p5):
club:=polygonplot([[24,5.75],[23,5.5],[29,.25],[30,.5]],color=gray):
clubhead:=disk([29.7,.4],.75,color=gray):
p8:=display(clubhead,club):
p9:=display(p7,p8):
p10:=translate(rotate(p8,2*Pi/3,[23,6.5]),-.5,13):
p11:=translate(rotate(p6,2*Pi/3,[19,13]),0,0):
p12:=display(p11,p10):
p13:=display(p12,p5):
p14:=translate(rotate(p12,-Pi/3,[19,12]),0,0):
p15:=display(p14,p5):
rough:=polygon([[0,0],[35,0],[35,40],[0,40]],color=yellow):
green:=disk([17.5,20],15,color=green):
hole:=disk([25,22.5],1,color=black):
p16:=display(hole,green,rough):
ball:=disk([0,0],.5,color=white):
p17:=display([translate(ball,5,22.5),p16]):
p18:=display([translate(ball,12,22.5),p16]):
p19:=display([translate(ball,17,22.5),p16]):
p20:=display([translate(ball,22,22.5),p16]):
p21:=display(p9,[translate(ball,30,0)]):
p22:=display(p15,[translate(ball,30,0)]):
p23:=display(p13,[translate(ball,30,0)]):
sky:=polygon([[-15,0],[45,0],[45,55],[-15,55]],color=blue):
p24:=display(p21,sky):
p25:=display(p22,sky):
p26:=display(p23,sky):
p27:=display(p21,[translate(ball,30,15)]):
p28:=display(p27,sky):
p29:=display(p9,[translate(ball,30,30)]):
p30:=display(p29,sky):
p31:=display(p9,[translate(ball,30,45)]):
p32:=display(p31,sky):
line1:=plot([[11,48],[11,41]],color=black):
line2:=plot([[14,48],[14,41]],color=black):
line3:=plot([[11,44.5],[14,44.5]],color=black):
h:=display(line1,line2,line3):
o:=plot([[15,48],[18,48],[18,41],[15,41],[15,48]],color=black):
l:=plot([[19,48],[19,41],[22,41]],color=black):
c:=plot([[26,48],[23,48],[23,41],[26,41]],color=black):
line4:=plot([[23,44.5],[25,44.5]],color=black):
e:=display(c,line4):
line5:=plot([[15,31.5],[18,31.5]],color=black):
line6:=plot([[15,24.5],[18,24.5]],color=black):
line7:=plot([[16.5,24.5],[16.5,31.5]],color=black):
i:=display(line5,line6,line7):
n:=plot([[19,24.5],[19,31.5],[22,24.5],[22,31.5]],color=black):
O2:=plot([[16,5],[13,5],[13,12],[16,12],[16,5]],color=black):
N2:=plot([[17,5],[17,12],[20,5],[20,12]],color=black):
c2:=plot([[24,12],[21,12],[21,5],[24,5]],color=black):
line8:=plot([[21,8.5],[23,8.5]],color=black):
E2:=display(c2,line8):
m:=polygon([[24.45,12],[24.45,5.5],[24.55,5.5],[24.55,12]],color=black):
d:=polygon([[24.45,5.1],[24.45,5],[24.55,5],[24.55,5.1]],color=black):
em:=display(m,d):
p33:=display(h,o,l,e,i,n,O2,N2,E2,em):
p34:=rotate(p8,-31*Pi/40,[29.7,.4]):
p35:=display(p7,p34,sky):
p36:=rotate(p6,2*Pi/3,[18.5,13.25]):
p37:=display(p34,p36,p5,sky):
p38:=display(foot,leg):
p39:=rotate(p38,-Pi/2,[18,8]):
p40:=display(p36,p4,p39,p34,sky):
p41:=display(p36,p3,foot,leg):
p42:=rotate(p41,Pi/4,[18,1.5]):
p43:=display(p42,p1,p34,sky):
p44:=translate(rotate(p41,Pi/2,[18,1.5]),0,3.2):
p45:=display(p44,p1,p34,sky):
Golf:=display([p24,p25,p26,p25,p24,p28,p30,p32,p16,p17,p18,p19,p20,p16,p33,p33,p33,p35,p37,p40,p37,p40,p37,p40,p37,p43,p45],insequence=true,scaling=constrained,axes=none):
speed=3
Golf;