>
|
c := plottools:-circle([x0, y0], 3, color = black):
earth := plots:-display(c):
eq2 := (x - x0)^2 / d1^2 + (y - y0)^2 / a^2 = 1:
base := plots:-implicitplot(eq2, x = 0..2, y = -3..3, ':-scaling' = ':-constrained', ':-color' = "black"):
curve1 := plots:-display(plottools:-rotate(base, -0.4)):
curve2 := plots:-display(plottools:-rotate(base, Pi - 0.4)):
zenith := plot(tan(Pi / 2 - 0.4) * x, x = -1.6..1.6):
elli2 := plottools:-ellipse([x0,y0],a,1):
plane := plots:-display(plottools:-rotate(elli2, -0.4),':-scaling'=':-constrained'):
line1 := plot(-tan(0.4) * x, x = 0..4.7):
line2 := plot(-0.978 * x, x = 0..1.5):
line3 := plot(0.6 * x, x = 0..2.16):
eq3 := (x - x0)^2 / (d1 / 3)^2 + (y - y0)^2 / (a / 3) ^2 = 1:
angle1 := plots:-display(plottools:-rotate(plots:-implicitplot(eq3, x = 0.5..1, y = -0.25..1.5, ':-scaling' = ':-constrained', ':-color' = "blue"), -0.4)):
eq4 := (x - x0)^2 / (a / 1.7)^2 + (y - y0)^2 / (1 / 1.7) ^2 = 1:
angle2 := plots:-display(plottools:-rotate(plots:-implicitplot(eq4, x = 1.1..2.5, y = 0..-1, ':-scaling' = ':-constrained', ':-color' = "blue"), -0.4)):
sunray1 := plots:-arrow([5, 1.15], [-2.2, 0], ':-color' = "red", ':-scaling' = ':-constrained', ':-shape' = ':-arrow'):
sunray2 := plots:-arrow([5, 0.55], [-2, 0], ':-color' = "red", ':-scaling' = ':-constrained', ':-shape' = ':-arrow'):
sunray3 := plots:-arrow([5, 0], [-1.95, 0], ':-color' = "red", ':-scaling' = ':-constrained', ':-shape' = ':-arrow'):
sunray4 := plots:-arrow([5, -0.55], [-2, 0], ':-color' = "red", ':-scaling' = ':-constrained', ':-shape' = ':-arrow'):
sunray5 := plots:-arrow([5, -1.15], [-2.2, 0], ':-color' = "red", ':-scaling' = ':-constrained', ':-shape' = ':-arrow'):
eq5 := (x - x0)^2 + (y - y0)^2 = 19:
circle2 := plots:-implicitplot(eq5, x = 4..4.2, y = -1..-2, ':-scaling' = ':-constrained', ':-color' = "blue"):
points := plots:-pointplot([[2.15, 1.28]], ':-symbol' = ':-soliddiamond', 'color' = "Niagara LeafGreen", 'symbolsize' = 15):
labels := plots:-textplot([[2.1, 1.3, ':-Observer', ':-font' = ["DejaVu Sans", "italic"], ':-align' = {':-above', ':-right'}, ':-color' = "Niagara LeafGreen"], [1.2, 0, phi, ':-font' = ["DejaVu Sans", "italic", 15], ':-align' = {':-above', ':-left'}, ':-color' = "blue"], [1.3, -0.9, omega, ':-font' = ["DejaVu Sans", "italic", 15], ':-align' = {':-above', ':-left'}, ':-color' = "blue"], [4.2, -1.8, delta, ':-font' = ["DejaVu Sans", "italic", 15], ':-align' = {':-above', ':-right'}, ':-color' = "blue"], [5, -0.4, "Sun rays", ':-font' = ["DejaVu Sans", "italic", 12], ':-align' = {':-above', ':-right'}, ':-color' = "red"]]):
equatorArrow := plots:-arrow([-4,0.5], [1.4, 0], ':-color' = "Niagara Purple", ':-scaling' = ':-constrained', ':-shape' = ':-arrow'):
equatorText := plots:-textplot([[-4, 0.5, "Equator"]], ':-color' = "Niagara Purple", ':-font' = ["DejaVu Sans", ':-roman', 12], ':-align' = {':-left'}):
meridianArrow := plots:-arrow([2, -3.6], [-0.5,1], ':-color' = ':-black', ':-scaling' = ':-constrained', ':-shape' = ':-arrow'):
meridianText := plots:-textplot([[2, -3.5, "Meridian perpendicular to sunrays"]], ':-color' = "black", ':-font' = ["DejaVu Sans", ':-roman', 12], ':-align' = {':-right'}):
plots:-display(earth, curve1, curve2, zenith, plane, line1, line2, line3, angle1, angle2, sunray1, sunray2, sunray3, sunray4, sunray5, circle2, points, labels, equatorArrow, equatorText, meridianArrow, meridianText, ':-axes' = ':-none', ':-size' = [0.5,0.5])
|