restart: with(plots):with(plottools):
body:=polygon([[0,0],[12,0],[12,5],[0,5],[0,0]],color=red):
body2:=plot([[0,0],[-12,0],[-12,5],[0,5],[0,0]],color=gray):
smokestack:=polygon([[8,5],[8,12],[11,12],[11,5]],color=black):
spokes:=plot([[[-2,0],[2,0],[0,-2],[0,2]],[[2,0],[0,2],[-2,0],[0,-2],[2,0]]],color=black):
rim:=circle([0,0],2,color=black):
wheel:=display([spokes,rim]):
Line:=plot([[0,2],[-1,2]],thickness=5,color=black):
smoke:=plot([[[8,12],[10.9,12.9],[11,12.95],[11,13],[10.98,13.05],[10.9,13.1],[8,14]],[[11,12],[8.1,12.9],[8,12.95],[8,13],[8.03,13.05],[8.1,13.1],[11,14]]],thickness=2,color=gray):
stationname:=textplot([0,0,"College Station"],font=[TIMES,ROMAN,12],color=white):
hill:=plot([[-55,-50],[-2.66,-1.9],[-2.5,-1.5],[0,0],[85,1]],thickness=5,color=green):
station:=polygon([[15,0],[60,0],[60,10],[15,10],[15,0]],color="Maroon"):
p1:=display(translate(smokestack,0,0),translate(body,0,0),translate(body,-13,0),translate(body,-26,0),translate(body,-39,-.8),translate(body,-52,-1.8),translate(wheel,10,-2),translate(wheel,3,-2),translate(wheel,-3,-2),translate(wheel,-10,-2),translate(wheel,-16.5,-2),translate(wheel,-23,-2),translate(wheel,-29.5,-2.5),translate(wheel,-37,-2.7),translate(wheel,-42.5,-2.6),translate(wheel,-49.5,-4),translate(Line,0,.5),translate(Line,-13,.5),translate(Line,-26,-.3),translate(Line,-39,-.8),translate(smoke,0,.3),translate(hill,-45.7,-5.4),translate(station,15,1),translate(stationname,52.87,6.17)):
p2:=display(translate(smokestack,25,0),translate(body,25,0),translate(body,12,0),translate(body,-1,0),translate(body,-14,-.8),translate(body,-27,-.8),translate(wheel,35,-2),translate(wheel,28,-2),translate(wheel,22,-2),translate(wheel,15,-2),translate(wheel,8.5,-2),translate(wheel,2,-2),translate(wheel,-4.5,-2.5),translate(wheel,-12,-2.7),translate(wheel,-17.5,-2.6),translate(wheel,-24.5,-2.8),translate(Line,25,.5),translate(Line,12,.5),translate(Line,-1,-.3),translate(Line,-14,-.8),translate(smoke,25,.3),translate(hill,-45.7,-5.4),translate(station,15,1),translate(stationname,52.87,6.17)):
speed 2
display([p1,p2],insequence=true,scaling=constrained,axes=none);