restart: with(plots): with(plottools):
volcano:=polygon( [[0,0], [7,0], [9,2], [11,6], [12,9.5], [14,9.5], [15,6], [17,2], [19,0], [26,0]], color=brown):
sun:= disk([3,24], 3, color="Orange"):
s1:=display([volcano, sun]):
plane1:=polygon( [[0,19], [1,18.5], [0,18]], color=gray):
plane2:=polygon( [[0,19], [1,19], [2,18.5], [1,18], [0,18]], color=gray):
plane3:=polygon( [[0,19], [2,19], [3,18.5], [2,18], [0,18]], color=gray):
plane4:=polygon( [[0,19], [3,19], [4,18.5], [3,18], [1,18], [0,18]], color=gray):
plane5:=polygon( [[0,19], [4,19], [5,18.5], [4,18],[0,18]], color=gray):
planebody:=polygon( [[.1,20], [0.5,20], [1.5,19], [5,19], [6,18.5], [5,18], [3,18], [2,18], [.2,18],[0.2, 19], [.1,20]], color=gray):
wing:=polygon( [[2, 18.5], [3.5,18.5], [3.5, 18.3], [2, 18.3], [2, 18.5]], color="DarkGray"):
tail:=polygon([[0.3, 18.8], [1.2, 18.8], [1.2, 18.6], [0.3, 18.6], [0.3,18.8]], color="DarkGray"):
cockpit:=polygon([[5,19], [5,18.5], [6, 18.5]], color=blue):
afterburner:=polygon([[0.2,19], [0.2,18], [0,18.2], [0, 18.8]], color="DarkGray"):
engine:=polygon([[0.2,19], [3.75,19], [4,18.3], [3.75, 18], [0.2, 18], [0.2, 19]], color=gray):
plane:=display([afterburner, tail, wing, engine, cockpit, planebody]):
s2:=display([s1, plane1]):
s3:=display([s1, plane2]):
s4:=display([s1, plane3]):
s5:=display([s1, plane4]):
s6:=display([s1, plane5]):
s7:=display([s1, plane]):
intro:=display([s1, s2, s3, s4, s5, s6, s7], insequence=true, scaling=constrained):
m1:=translate(plane, 1, 0):
m2:=translate(plane, 2, 0):
m3:=translate(plane, 3, 0):
m4:=translate(plane, 4, 0):
m5:=translate(plane, 5, 0):
m6:=translate(plane, 6, 0):
m7:=translate(plane, 7, 0):
m8:=translate(plane, 8, 0):
m9:=translate(plane, 9, -1):
s8:=display(s1, m1):
s9:=display(s1, m2):
s10:=display(s1, m3):
s11:=display(s1, m4):
s12:=display(s1, m5):
s13:=display(s1, m6):
s14:=display(s1, m7):
s15:=display(s1, m8):
s16:=display(s1, m9):
beforev:=display([intro, s8, s9, s10, s11, s12, s13, s14], insequence=true, scaling=constrained):
yflame1:=polygon([[12,9.5],[10,17],[13,14],[16,19],[14,9.5]], color=yellow):
rflame1:=polygon([[12,9.5],[10,21],[13,18],[16,23],[14,9.5]], color=red):
flames1:=display(s1, yflame1, rflame1, m9):
smoke:=disk([13,15], 5.7, color="DarkGray"):
s17:=display([beforev, flames1, flames1, smoke], insequence=true, scaling=constrained ):
v2:=display([s1, smoke, m9]):
m17:=translate( rotate(plane, -Pi/8, [2.5,18]), 10, -2):
m18:=translate( rotate(plane, -Pi/8, [2.5,18]), 12, -3):
m19:=translate( rotate(plane, -Pi/8, [2.5,18]), 14, -4):
m20:=translate( rotate(plane, -Pi/8, [2.5,18]), 16, -7):
m21:=translate( rotate(plane, -Pi/8, [2.5,18]), 18, -9):
m22:=translate( rotate(plane, -Pi/8, [2.5,18]), 19, -12):
m23:=translate( rotate(plane, -Pi/8, [2.5,18]), 20, -14):
m24:=translate( rotate(plane, -Pi/8, [2.5,18]), 21, -16):
m25:=translate( rotate(plane, -Pi/8, [2.5,18]), 22, -17):
s18:= display([smoke, s1, m17]):
s19:= display([smoke, s1, m18]):
s20:= display([smoke, s1, m19]):
s21:= display([smoke, s1, m20]):
s22:= display([smoke, s1, m21]):
s23:= display([smoke, s1, m22]):
s24:=display([smoke, s1, m23]):
s25:= display([smoke, s1, m24]):
s26:= display([m25, smoke, s1]):
fall:=display([beforev, flames1, v2, s18, s19, s20, s21, s22, s23, s24, s25, s26], insequence=true, scaling=constrained):
crater1:=polygon([[20,0], [20.3,1.5], [21.5,0.1], [29, 0.1], [31.2, 1.5], [31.5,0] ], color=brown):
crater:=display([crater1]):
expl1:=polygon([[21,0], [21.5,4], [22,3.5], [25,6], [27,3], [28,4], [30,0]], color=yellow):
display([expl1]):
expl2:=polygon([[21,0], [21.5,5], [22, 4.5], [25,10], [27,5], [28,7], [30,0]], color=red):
explosion:=display([expl1, expl2, crater, s1, smoke]):
explosionall:=display([fall, explosion], insequence=true, scaling=constrained ):
ohno2:=textplot([24.5, 20, "OH NO!!!"], font=["TIMES NEW ROMAN", BOLD, 30]):
ohno1:=display([s1, smoke, ohno2, explosion]):
display([ohno1], scaling=constrained):
last:=display([explosionall, ohno1, explosion, ohno1], insequence=true, scaling=constrained):
s27:=display(s1, crater):
s28:=display(s1, crater, m1):
s29:=display(s1, crater, m2):
s30:=display(s1, crater, m3):
s31:=display(s1, crater, m4):
s32:=display(s1, crater, m5):
s33:=display(s1, crater, m6):
s34:=display(s1, crater, m7):
s35:=display(s1, crater, m8):
m27:=translate(plane, 9, 0):
m28:=translate(plane, 10, 0):
m29:=translate(plane, 11, 0):
m30:=translate(plane, 12, 0):
m31:=translate(plane, 13, 0):
m32:=translate(plane, 14, 0):
m33:=translate(plane, 15, 0):
m34:=translate(plane, 16, 0):
m35:=translate(plane, 17, 0):
m36:=translate(plane, 18, 0):
m37:=translate(plane, 19, 0):
m38:=translate(plane, 20, 0):
m39:=translate(plane, 21, 0):
m40:=translate(plane, 22, 0):
m41:=translate(plane, 23, 0):
m42:=translate(plane, 24, 0):
m43:=translate(plane, 25, 0):
m44:=translate(plane, 26, 0):
m45:=translate(plane, 27, 0):
m46:=translate(plane, 28, 0):
m47:=translate(plane, 29, 0):
m48:=translate(plane, 30, 0):
m49:=translate(plane, 31, 0):
m50:=translate(plane, 32, 0):
s37:=display(s1, crater, m27):
s38:=display(s1, crater, m28):
s39:=display(s1, crater, m29):
s40:=display(s1, crater, m30):
s41:=display(s1, crater, m31):
s42:=display(s1, crater, m32):
s43:=display(s1, crater, m33):
s44:=display(s1, crater, m34):
s45:=display(s1, crater, m35):
s46:=display(s1, crater, m36):
s47:=display(s1, crater, m37):
s48:=display(s1, crater, m38):
s49:=display(s1, crater, m39):
s50:=display(s1, crater, m40):
s51:=display(s1, crater, m41):
s52:=display(s1, crater, m42):
s53:=display(s1, crater, m43):
s54:=display(s1, crater, m44):
s55:=display(s1, crater, m45):
s56:=display(s1, crater, m46):
s57:=display(s1, crater, m47):
s58:=display(s1, crater, m48):
s59:=display(s1, crater, m49):
s60:=display(s1, crater, m50):
speed 10
display([last, s27, s28, s29, s30, s31, s32, s33, s34, s35, s37, s38, s39, s40, s41, s42, s43, s44, s45, s46, s47, s48, s49, s50, s51, s52, s53, s54, s55, s56, s57, s58, s59, s60], insequence=true, scaling=constrained, axes=none);