3D Geometric Demonstration of Seasonal Changes
2019-04-25 12:29
This applet provides a comprehensive three-dimensional geometric demonstration of seasonal changes on Earth. It simulates the Earth's orbital motion around the Sun and its axial rotation, using advanced 3D geometry and vector tools to visually illustrate why seasons occur. A sphere represents the Earth, with key reference points such as the North Pole, South Pole, and equator clearly marked. Vectors and surface objects are employed to show the direction and angle of incoming solar rays throughout the year. The moving subsolar point—the location where the Sun shines directly overhead—is dynamically displayed, allowing users to observe how its latitude shifts between the Tropic of Cancer and the Tropic of Capricorn over the course of an orbit. This shift is directly linked to the changing angles of solar incidence, which produce the four seasons. The applet incorporates 3D coordinate systems, parametric equations, and sequences to model the Earth's tilted axis and elliptical orbit with mathematical precision. Users can interact with the model by adjusting parameters such as the axial tilt angle and the position along the orbit, enabling them to explore how these variables affect daylight duration, solar altitude, and seasonal intensity at different latitudes. The interactive sliders and animation controls give students hands-on experience in connecting abstract vector and parametric concepts to a real-world astronomical phenomenon. This applet is particularly valuable for teaching solid geometry, vector operations, and parametric modeling, while also bridging mathematics with earth science and geography in an interdisciplinary approach. It is well suited for secondary and undergraduate classrooms seeking a dynamic, visual, and mathematically rigorous introduction to the geometry underlying seasonal change.
In collections
Mysteries of the Solar System
Loading the math board and drawing, please wait…
<?xml version="1.0" encoding="utf-8"?>
<geogebra format="5.0" version="5.0.535.0" app="classic" platform="offline" id="8f25326d-ba51-4046-94a1-91b9122b6f1c" xsi:noNamespaceSchemaLocation="http://www.geogebra.org/ggb.xsd" xmlns="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<gui>
<window width="1464" height="843" />
<perspectives>
<perspective id="tmp">
<panes>
<pane location="" divider="0.38046448087431695" orientation="1" />
</panes>
<views>
<view id="8" toolbar="1001 | 1002 | 1003 || 1005 | 1004 || 1006 | 1007 | 1010 || 1008 | 1009 || 6" visible="false" inframe="false" stylebar="false" location="1,3,3" size="300" window="100,100,600,400" />
<view id="4" toolbar="0 || 2020 , 2021 , 2022 || 2001 , 2003 , 2002 , 2004 , 2005 || 2040 , 2041 , 2042 , 2044 , 2043" visible="false" inframe="false" stylebar="false" location="1,1" size="300" window="100,100,600,400" />
<view id="16" visible="false" inframe="false" stylebar="true" location="1,3" size="549" window="50,50,500,500" />
<view id="1" visible="true" inframe="false" stylebar="false" location="3" size="557" window="100,100,600,400" />
<view id="2" visible="false" inframe="false" stylebar="false" location="3" size="380" window="100,100,250,400" />
<view id="32" visible="false" inframe="false" stylebar="true" location="1" size="150" window="50,50,500,500" />
<view id="64" toolbar="0" visible="false" inframe="false" stylebar="true" location="1" size="150" window="50,50,500,500" />
<view id="128" visible="false" inframe="false" stylebar="false" location="1" size="480" window="50,50,500,500" />
<view id="4097" visible="false" inframe="false" stylebar="true" location="1" size="272" window="100,100,700,550" />
<view id="70" toolbar="0 || 2020 || 2021 || 2022" visible="false" inframe="false" stylebar="true" location="1" size="150" window="50,50,500,500" />
<view id="43" visible="false" inframe="false" stylebar="false" location="1" size="450" window="50,50,500,500" />
<view id="512" toolbar="0 | 1 501 5 19 , 67 | 2 15 45 18 , 7 37 | 514 3 9 , 13 44 , 47 | 16 51 | 551 550 11 , 20 22 21 23 , 55 56 57 , 12 | 69 | 510 511 , 512 513 | 533 531 , 534 532 , 522 523 , 537 536 , 535 | 521 520 | 36 , 38 49 560 | 571 30 29 570 31 33 | 17 | 540 40 41 42 , 27 28 35 , 6 , 502" visible="true" inframe="false" stylebar="false" location="1" size="899" window="100,100,600,400" />
</views>
<toolbar show="true" items="0 73 62 | 1 501 67 , 5 19 , 72 75 76 | 2 15 45 , 18 65 , 7 37 | 4 3 8 9 , 13 44 , 58 , 47 | 16 51 64 , 70 | 10 34 53 11 , 24 20 22 , 21 23 | 55 56 57 , 12 | 36 46 , 38 49 50 , 71 14 68 | 30 29 54 32 31 33 | 25 17 26 60 52 61 | 40 41 42 , 27 28 35 , 6" position="1" help="false" />
<input show="true" cmd="true" top="algebra" />
<dockBar show="false" east="false" />
</perspective>
</perspectives>
<labelingStyle val="0"/>
<font size="18"/>
</gui>
<euclidianView>
<viewNumber viewNo="1"/>
<size width="556" height="789"/>
<coordSystem xZero="415.49999999999994" yZero="411.99999999999994" scale="49.99999999999998" yscale="50.00000000000002"/>
<evSettings axes="false" grid="false" gridIsBold="false" pointCapturing="3" rightAngleStyle="2" checkboxSize="26" gridType="0"/>
<bgColor r="192" g="192" b="192"/>
<axesColor r="32" g="32" b="32"/>
<gridColor r="192" g="192" b="192"/>
<lineStyle axes="9" grid="0"/>
<axis id="0" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true"/>
<axis id="1" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true"/>
</euclidianView>
<euclidianView>
<viewNumber viewNo="2"/>
<size width="1196" height="88"/>
<coordSystem xZero="229" yZero="320" scale="49.99999999999998" yscale="50.00000000000006"/>
<evSettings axes="false" grid="true" gridIsBold="false" pointCapturing="3" rightAngleStyle="2" checkboxSize="26" gridType="0"/>
<bgColor r="255" g="255" b="255"/>
<axesColor r="0" g="0" b="0"/>
<gridColor r="192" g="192" b="192"/>
<lineStyle axes="1" grid="10"/>
<axis id="0" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true"/>
<axis id="1" show="false" label="" unitLabel="" tickStyle="1" showNumbers="true"/>
</euclidianView>
<algebraView>
<mode val="1"/>
<collapsed val="0"/>
</algebraView>
<kernel>
<uses3D val="true"/>
<continuous val="false"/>
<usePathAndRegionParameters val="true"/>
<decimals val="2"/>
<angleUnit val="degree"/>
<algebraStyle val="0" spreadsheet="0"/>
<coordStyle val="0"/>
<startAnimation val="true"/>
</kernel>
<tableview min="-2" max="2" step="1"/>
<scripting blocked="false" disabled="false"/>
<euclidianView3D>
<coordSystem xZero="0" yZero="0" zZero="-0.31307837013946604" scale="244.2483685851914" xAngle="20" zAngle="-60"/>
<evSettings axes="false" grid="false" gridIsBold="false" pointCapturing="3" rightAngleStyle="2" gridType="0"/>
<axis id="0" show="false" label="x" unitLabel="" tickStyle="2" showNumbers="false"/>
<axis id="1" show="false" label="" unitLabel="" tickStyle="2" showNumbers="false"/>
<axis id="2" show="false" label="z" unitLabel="" tickStyle="2" showNumbers="false"/>
<plate show="false"/>
<bgColor r="32" g="32" b="32"/>
<clipping use="false" show="false" size="2"/>
<projection type="0"/>
</euclidianView3D>
<construction title="季節變化" author="" date="">
<element type="numeric" label="r">
<value val="1"/>
<show object="true" label="true"/>
<objColor r="0" g="5" b="190" alpha="0.1"/>
<layer val="1"/>
<labelMode val="1"/>
<slider min="1" max="6" absoluteScreenLocation="true" width="200" x="35" y="652" fixed="true" horizontal="true" showAlgebra="true"/>
<lineStyle thickness="25" type="0" typeHidden="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<element type="numeric" label="day">
<value val="85"/>
<show object="true" label="true"/>
<objColor r="255" g="0" b="0" alpha="0.1"/>
<bgColor r="255" g="127" b="0" alpha="102"/>
<layer val="1"/>
<labelMode val="3"/>
<slider min="0" max="365" absoluteScreenLocation="true" width="500" x="32" y="278" fixed="false" horizontal="true" showAlgebra="true"/>
<lineStyle thickness="25" type="0" typeHidden="1"/>
<animation step="1" speed="24 / 365" type="1" playing="true"/>
<caption val="所在季節"/>
</element>
<expression label="wi3" exp="((day / 365 * 2) * π)" />
<element type="numeric" label="wi3">
<value val="1.4632075372883968"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<expression label="t" exp="((2 * π) * day / 365)" />
<element type="numeric" label="t">
<value val="1.4632075372883968"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<expression label="a" exp="sin(t)" />
<element type="numeric" label="a">
<value val="0.994217906893952"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<expression label="pw" exp="(66.57 / 180 * π)"/>
<element type="numeric" label="pw">
<value val="1.161865683052625"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label="wi1" exp="π / 2 - pw" />
<element type="numeric" label="wi1">
<value val="0.4089306437422715"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<expression label="wi2" exp="(a * wi1)" />
<element type="numeric" label="wi2">
<value val="0.4065661686862375"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<element type="numeric" label="t_1">
<value val="6"/>
<show object="true" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
<layer val="1"/>
<labelMode val="3"/>
<slider min="0" max="24" absoluteScreenLocation="true" width="500" x="34" y="578" fixed="false" horizontal="true" showAlgebra="true"/>
<lineStyle thickness="25" type="0" typeHidden="1"/>
<animation step="0.5" speed="24" type="1" playing="true"/>
<caption val="時間"/>
</element>
<expression label="t_2" exp="(t_1 / 12 * π)" />
<element type="numeric" label="t_2">
<value val="1.5707963267948966"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<element type="numeric" label="t_3">
<value val="1"/>
<show object="false" label="true"/>
<objColor r="255" g="127" b="0" alpha="0.1"/>
<layer val="0"/>
<labelMode val="1"/>
<slider min="0" max="(2 * π)" absoluteScreenLocation="true" width="200" x="109" y="296" fixed="false" horizontal="true" showAlgebra="true"/>
<lineStyle thickness="10" type="0" typeHidden="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label="Sn" exp="((((r + 1) * cos(wi2)) * cos(wi3)), ((r + 1) * sin(wi3)), ((r + 1) * sin(wi2)))" type="point" />
<element type="point3d" label="Sn">
<show object="true" label="false" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<coords x="0.19725613420338178" y="1.988435813787904" z="0.7909154918701292" w="1"/>
<pointSize val="3"/>
</element>
<expression label="O" exp="(0, 0, 0)" type="point"/>
<element type="point3d" label="O">
<show object="true" label="false" ev="5"/>
<objColor r="0" g="0" b="255" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<coords x="0" y="0" z="0" w="1"/>
<pointSize val="5"/>
</element>
<command name="Sphere">
<input a0="O" a1="r"/>
<output a0="a_1"/>
</command>
<element type="quadric" label="a_1">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="5" b="190" alpha="0.75"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<eigenvectors x0="1" y0="0" z0="0" x1="0" y1="1" z1="0" x2="0" y2="0" z2="1"/>
<matrix A0="1" A1="1" A2="1" A3="-1" A4="0" A5="0" A6="0" A7="0" A8="0" A9="0"/>
<eqnStyle style="specific"/>
</element>
<expression label="北極" exp="O + (0, 0, r)" type="point" />
<element type="point3d" label="北極">
<show object="true" label="true" ev="4"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="0"/>
<labelOffset x="-7" y="-13"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="0" y="0" z="1" w="1"/>
<pointSize val="3"/>
</element>
<expression label="南極" exp="O - (0, 0, r)" type="point" />
<element type="point3d" label="南極">
<show object="true" label="true" ev="4"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="0"/>
<labelOffset x="-2" y="41"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="0" y="0" z="-1" w="1"/>
<pointSize val="3"/>
</element>
<command name="Vector">
<input a0="O" a1="Sn"/>
<output a0="v"/>
</command>
<element type="vector3d" label="v">
<show object="true" label="false" ev="5"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="0.19725613420338178" y="1.988435813787904" z="0.7909154918701292" w="0"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<startPoint exp="O"/>
</element>
<expression label="v_0" exp="(1 / Length[v] * v)" type="vector" />
<element type="vector3d" label="v_0">
<show object="true" label="false" ev="5"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="0.09178840754561461" y="0.9252708798707204" z="0.3680335407316882" w="0"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
</element>
<command name="Circle">
<input a0="O" a1="r" a2="v"/>
<output a0="c"/>
</command>
<element type="conic3d" label="c">
<show object="true" label="false" ev="4"/>
<objColor r="255" g="153" b="153" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="4" type="15" typeHidden="1"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-1" A3="0" A4="0" A5="0"/>
<eqnStyle style="parametric"/>
</element>
<command name="Point">
<input a0="c"/>
<output a0="A"/>
</command>
<element type="point3d" label="A">
<show object="true" label="false" ev="4"/>
<objColor r="125" g="125" b="255" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
<coords x="-0.9835114153577182" y="0.14207311558652666" z="-0.11189515489329918" w="1"/>
<pointSize val="5"/>
</element>
<command name="Vector">
<input a0="O" a1="A"/>
<output a0="v_a"/>
</command>
<element type="vector3d" label="v_a">
<show object="true" label="false" ev="5"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="-0.9835114153577182" y="0.14207311558652666" z="-0.11189515489329918" w="0"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<startPoint exp="O"/>
</element>
<expression label="bt" exp="asin(z(v_0))" />
<element type="numeric" label="bt">
<value val="0.37689323448665885"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<expression label="al" exp="acos(x(v_0))" />
<element type="numeric" label="al">
<value val="1.4788785401997504"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<command name="Sequence">
<input a0="Circle[(0, 0, 0), r, Vector[(0, 0, 0), (cos(i + t_2), sin(i + t_2), 0)]]" a1="i" a2="0" a3="(2 * π)" a4="π / 5"/>
<output a0="Liste1"/>
</command>
<element type="list" label="Liste1">
<show object="false" label="false" ev="4"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelMode val="0"/>
<lineStyle thickness="3" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<expression label="Laf" exp="{{1.049, 0.5668}, {1.073, 0.57563}, {1.095, 0.59001}, {1.23, 0.6483}, {1.368, 0.75311}, {1.414, 0.89012}, {1.535, 0.79122}, {1.642, 0.69231}, {1.69, 0.68562}, {1.826, 0.71195}, {1.916, 0.6088}, {1.987, 0.62049}, {2.024, 0.56869}, {2.066, 0.56566}, {2.092, 0.54131}, {2.123, 0.5156}, {2.164, 0.4468}, {2.17, 0.3223}, {2.164, 0.32376}, {2.081, 0.29511}, {1.971, 0.25336}, {1.835, 0.21002}, {1.767, 0.2417}, {1.712, 0.23126}, {1.654, 0.207}, {1.583, 0.15272}, {1.5, 0.1693}, {1.474, -0.00349}, {1.497, -0.13381}, {1.461, -0.18791}, {1.423, -0.23114}, {1.315, -0.30427}, {1.255, -0.27823}, {1.198, -0.29432}, {1.04, -0.16778}, {1.015, -0.13963}, {0.979, -0.11947}, {0.95, -0.10201}, {0.948, -0.01047}, {0.929, 0.05349}, {0.929, 0.17773}, {0.997, 0.2298}, {1.01, 0.35197}, {1, 0.40335}, {1.018, 0.45128}, {1.026, 0.52223}, {1.019, 0.54294}, {1.025, 0.56325}}"/>
<element type="list" label="Laf">
<objColor r="0" g="100" b="0" alpha="0.1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<animation step="1" speed="1" type="0" playing="false"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<expression label="Lamsü" exp="{{2.528, -1.13898}, {2.454, -1.208}, {2.395, -1.14662}, {2.284, -1.13438}, {2.212, -0.98559}, {2.072, -0.85672}, {1.974, -0.78156}, {1.967, -0.72635}, {1.807, -0.68184}, {1.676, -0.60822}, {1.617, -0.69412}, {1.564, -0.869}, {1.473, -0.91809}, {1.469, -1.00092}, {1.382, -1.10063}, {1.37, -1.20035}, {1.357, -1.25402}, {1.423, -1.34146}, {1.444, -1.35681}, {1.495, -1.35219}, {1.555, -1.39516}, {1.645, -1.41971}, {1.82, -1.32918}, {1.891, -1.22947}, {1.983, -1.22813}, {2.147, -1.25038}, {2.213, -1.27642}, {2.27, -1.28604}, {2.34, -1.29678}, {2.429, -1.31999}, {2.511, -1.28165}, {2.545, -1.18194}, {2.535, -1.16821}, {2.528, -1.13898}}"/>
<element type="list" label="Lamsü">
<objColor r="0" g="100" b="0" alpha="0.1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<animation step="1" speed="1" type="0" playing="false"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<command name="Sequence">
<input a0="Vector[Rotate[A + (10000 * v), i, Line[O, Sn]], Rotate[A, i, Line[O, Sn]]]" a1="i" a2="0" a3="(2 * π)" a4="π / 12"/>
<output a0="Liste2"/>
</command>
<element type="list" label="Liste2">
<show object="true" label="false" ev="5"/>
<objColor r="255" g="255" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="2" type="0" typeHidden="0"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<element type="button" label="SF0">
<show object="true" label="true"/>
<objColor r="96" g="96" b="96" alpha="1"/>
<layer val="0"/>
<labelOffset x="284" y="636"/>
<labelMode val="3"/>
<fixed val="true"/>
<auxiliary val="true"/>
<ggbscript val="w0=!w0
SetCaption[SF0,If[w0,"暫停","開始"]]
StartAnimation[day,w0]
StartAnimation[t_1,w0]

"/>
<font serif="false" sizeM="1.4" size="8" style="3"/>
<caption val="暫停"/>
</element>
<element type="boolean" label="w0">
<value val="true"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<checkbox fixed="true"/>
</element>
<element type="button" label="SF1">
<show object="true" label="true"/>
<objColor r="96" g="96" b="96" alpha="1"/>
<layer val="0"/>
<labelOffset x="383" y="637"/>
<labelMode val="3"/>
<fixed val="true"/>
<auxiliary val="true"/>
<ggbscript val="w0=false
SetCaption[SF0,"開始"]
StartAnimation[day,false]
StartAnimation[t_1,false]
SetValue[day,0]
SetValue[t_1,0]
"/>
<font serif="false" sizeM="1.4" size="8" style="3"/>
<caption val="重新開始"/>
</element>
<element type="point" label="Pos_1">
<show object="true" label="true" ev="8"/>
<objColor r="0" g="0" b="255" alpha="0"/>
<layer val="0"/>
<labelMode val="0"/>
<animation step="0.1" speed="1" type="1" playing="false"/>
<coords x="-7.73" y="5.58" z="1"/>
<pointSize val="5"/>
<pointStyle val="0"/>
</element>
<element type="numeric" label="brT1">
<value val="8.5"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
<layer val="0"/>
<labelMode val="2"/>
<slider min="-5" max="10" absoluteScreenLocation="true" width="200" x="30" y="170" fixed="false" horizontal="true" showAlgebra="false"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label="Laust" exp="{{1.757, 2.4876}, {1.824, 2.509}, {1.83, 2.5351}, {1.866, 2.5466}, {1.907, 2.5642}, {1.926, 2.598}, {1.959, 2.6118}, {1.962, 2.6294}, {1.982, 2.6325}, {2.013, 2.6685}, {2.052, 2.6701}, {2.085, 2.677}, {2.124, 2.6678}, {2.146, 2.6486}, {2.164, 2.6394}, {2.197, 2.621}, {2.227, 2.6141}, {2.233, 2.5773}, {2.249, 2.555}, {2.231, 2.5297}, {2.249, 2.5052}, {2.234, 2.4522}, {2.217, 2.4362}, {2.181, 2.4193}, {2.186, 2.3894}, {2.144, 2.4055}, {2.181, 2.3686}, {2.147, 2.3418}, {2.13, 2.3073}, {2.12, 2.2889}, {2.125, 2.2506}, {2.135, 2.2171}, {2.148, 2.1681}, {2.164, 2.152}, {2.163, 2.0937}, {2.183, 2.0561}, {2.167, 2.007}, {2.129, 2.0224}, {2.082, 2.0063}, {2.035, 1.9825}, {1.966, 1.9817}, {1.934, 2.0285}, {1.919, 2.0783}, {1.911, 2.1144}, {1.856, 2.1443}, {1.873, 2.155}, {1.827, 2.1834}, {1.81, 2.2179}, {1.829, 2.2394}, {1.822, 2.2578}, {1.788, 2.2839}, {1.781, 2.3138}, {1.766, 2.3038}, {1.779, 2.343}, {1.787, 2.3898}, {1.829, 2.3629}, {1.867, 2.4266}, {1.876, 2.458}, {1.82, 2.471}, {1.779, 2.4764}, {1.757, 2.4876}}"/>
<element type="list" label="Laust">
<objColor r="0" g="100" b="0" alpha="0.1"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<animation step="1" speed="1" type="0" playing="false"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<expression label="Liste3" exp="{"春季", "夏季", "秋季", "冬季"}"/>
<element type="list" label="Liste3">
<show object="false" label="false" ev="4"/>
<objColor r="0" g="100" b="0" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="1"/>
<labelMode val="0"/>
<animation step="1" speed="1" type="0" playing="false"/>
<lineStyle thickness="2" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<expression label="jzn" exp="Mod[floor((day / 365 * 4)), 4] + 1" />
<element type="numeric" label="jzn">
<value val="1"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<expression label="jzs" exp="Mod[floor((day / 365 * 4)) + 2, 4] + 1" />
<element type="numeric" label="jzs">
<value val="3"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<expression label="t_p" exp="1.16152"/>
<element type="numeric" label="t_p">
<value val="1.16152"/>
<show object="false" label="true"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
<layer val="1"/>
<labelMode val="2"/>
<animation step="0.1" speed="1" type="0" playing="false"/>
</element>
<expression label="r_1" exp="r + 0.05" />
<element type="numeric" label="r_1">
<value val="1.05"/>
<objColor r="0" g="0" b="0" alpha="0.1"/>
</element>
<command name="Surface">
<input a0="(cos(wi3) * ((((cos((-wi2)) * r_1) * cos(u)) * cos(w)) + ((sin((-wi2)) * r_1) * sin(w)))) - (((sin(wi3) * r_1) * sin(u)) * cos(w))" a1="(sin(wi3) * ((((cos((-wi2)) * r_1) * cos(u)) * cos(w)) + ((sin((-wi2)) * r_1) * sin(w)))) + (((cos(wi3) * r_1) * sin(u)) * cos(w))" a2="(((sin(wi2) * r_1) * cos(u)) * cos(w)) + ((cos(wi2) * r_1) * sin(w))" a3="u" a4="((-π)) / 2" a5="π / 2" a6="w" a7="((-π)) / 2" a8="π / 2"/>
<output a0="d"/>
</command>
<element type="surfacecartesian3d" label="d">
<show object="true" label="false" ev="5"/>
<objColor r="255" g="255" b="0" alpha="0.8"/>
<layer val="1"/>
<labelMode val="0"/>
<lineStyle thickness="0" type="0" typeHidden="1"/>
</element>
<command name="Sequence">
<input a0="Segment[(((r_1 * sin(Element[Laf, i, 1])) * cos(Element[Laf, i, 2] + (t_2 / 3 * π))), ((r_1 * sin(Element[Laf, i, 1])) * sin(Element[Laf, i, 2] + (t_2 / 3 * π))), (r_1 * cos(Element[Laf, i, 1]))), (((r_1 * sin(Element[Laf, i + 1, 1])) * cos(Element[Laf, i + 1, 2] + (t_2 / 3 * π))), ((r_1 * sin(Element[Laf, i + 1, 1])) * sin(Element[Laf, i + 1, 2] + (t_2 / 3 * π))), (r_1 * cos(Element[Laf, i + 1, 1])))]" a1="i" a2="1" a3="Length[Laf] - 1"/>
<output a0="k_{afr}"/>
</command>
<element type="list" label="k_{afr}">
<show object="true" label="false" ev="5"/>
<objColor r="224" g="224" b="224" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="3" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<command name="Sequence">
<input a0="Segment[(((r_1 * sin(Element[Lamsü, i, 1])) * cos(Element[Lamsü, i, 2] + (t_2 / 3 * π))), ((r_1 * sin(Element[Lamsü, i, 1])) * sin(Element[Lamsü, i, 2] + (t_2 / 3 * π))), (r_1 * cos(Element[Lamsü, i, 1]))), (((r_1 * sin(Element[Lamsü, i + 1, 1])) * cos(Element[Lamsü, i + 1, 2] + (t_2 / 3 * π))), ((r_1 * sin(Element[Lamsü, i + 1, 1])) * sin(Element[Lamsü, i + 1, 2] + (t_2 / 3 * π))), (r_1 * cos(Element[Lamsü, i + 1, 1])))]" a1="i" a2="1" a3="Length[Lamsü] - 1"/>
<output a0="k_{amsüB}"/>
</command>
<element type="list" label="k_{amsüB}">
<show object="true" label="false" ev="5"/>
<objColor r="224" g="224" b="224" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="0"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="3" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<command name="Sequence">
<input a0="Segment[(((r_1 * sin(Element[Laust, i, 1])) * cos(Element[Laust, i, 2] + (t_2 / 3 * π))), ((r_1 * sin(Element[Laust, i, 1])) * sin(Element[Laust, i, 2] + (t_2 / 3 * π))), (r_1 * cos(Element[Laust, i, 1]))), (((r_1 * sin(Element[Laust, i + 1, 1])) * cos(Element[Laust, i + 1, 2] + (t_2 / 3 * π))), ((r_1 * sin(Element[Laust, i + 1, 1])) * sin(Element[Laust, i + 1, 2] + (t_2 / 3 * π))), (r_1 * cos(Element[Laust, i + 1, 1])))]" a1="i" a2="1" a3="Length[Laust] - 1"/>
<output a0="k_{aust}"/>
</command>
<element type="list" label="k_{aust}">
<show object="true" label="false" ev="5"/>
<objColor r="224" g="224" b="224" alpha="0"/>
<bgColor r="255" g="255" b="255" alpha="255"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="3" type="0" typeHidden="1"/>
<pointSize val="5"/>
<pointStyle val="-1"/>
</element>
<command name="Circle">
<input a0="O + (0, 0, (r_1 * sin(t_p)))" a1="(r_1 * cos(t_p))" a2="Vector[O, O + (0, 0, 1)]"/>
<output a0="pk_n"/>
</command>
<element type="conic3d" label="pk_n">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="153" b="255" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="4" type="20" typeHidden="0"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-0.1745926091016453" A3="0" A4="0" A5="0"/>
<eqnStyle style="parametric"/>
</element>
<command name="Circle">
<input a0="O + (0, 0, ((-r_1) * sin(t_p)))" a1="(r_1 * cos(t_p))" a2="Vector[O, O + (0, 0, 1)]"/>
<output a0="pk_s"/>
</command>
<element type="conic3d" label="pk_s">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="153" b="255" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="4" type="20" typeHidden="1"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-0.1745926091016453" A3="0" A4="0" A5="0"/>
<eqnStyle style="parametric"/>
</element>
<command name="Circle">
<input a0="O" a1="r_1" a2="Vector[O, O + (0, 0, 1)]"/>
<output a0="eq"/>
</command>
<element type="conic3d" label="eq">
<show object="true" label="false" ev="5"/>
<objColor r="0" g="153" b="255" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="3" type="10" typeHidden="0"/>
<eigenvectors x0="1" y0="0" z0="1.0" x1="0" y1="1" z1="1.0"/>
<matrix A0="1" A1="1" A2="-1.1025" A3="0" A4="0" A5="0"/>
<eqnStyle style="parametric"/>
</element>
<expression label="Text2" exp=""\mathcal{季節}""/>
<element type="text" label="Text2">
<show object="false" label="false" ev="37"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="4" size="54" style="0"/>
<startPoint exp="O"/>
<labelOffset x="-34" y="-72"/>
</element>
<expression label="TCr" exp=""\copyright __""/>
<element type="text" label="TCr">
<show object="true" label="true" ev="40"/>
<objColor r="160" g="160" b="160" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<fixed val="true"/>
<selectionAllowed val="false"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="0.7" size="-6" style="1"/>
<absoluteScreenLocation x="26" y="543"/>
</element>
<command name="CurveCartesian">
<input a0="(cos((t_2 / 3 * π)) * (r_1 * cos(u)))" a1="(sin((t_2 / 3 * π)) * (r_1 * cos(u)))" a2="(r_1 * sin(u))" a3="u" a4="((-π)) / 2" a5="π / 2"/>
<output a0="gmt"/>
</command>
<element type="curvecartesian3d" label="gmt">
<show object="true" label="false" ev="4"/>
<objColor r="255" g="0" b="255" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<lineStyle thickness="2" type="10" typeHidden="1"/>
</element>
<element type="point" label="B">
<show object="true" label="false" ev="4"/>
<objColor r="0" g="0" b="255" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<animation step="0.1" speed="1" type="1" playing="false"/>
<coords x="-7.79" y="-3.34" z="1"/>
<pointSize val="5"/>
<pointStyle val="0"/>
</element>
<element type="image" label="Bild1">
<file name="05ab58d6e56c0fdb51c78be4a4cb2b68\seasons_02.png"/>
<inBackground val="false"/>
<startPoint number="0" exp="B"/>
<startPoint number="1" exp="B_2"/>
<show object="true" label="false"/>
<objColor r="0" g="0" b="0" alpha="1"/>
<layer val="0"/>
<labelMode val="0"/>
<fixed val="true"/>
<selectionAllowed val="false"/>
</element>
<expression label="B_2" exp="B + (10.4, 0)" type="point" />
<element type="point" label="B_2">
<show object="true" label="false" ev="4"/>
<objColor r="68" g="68" b="68" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<coords x="2.6100000000000003" y="-3.34" z="1"/>
<pointSize val="3"/>
<pointStyle val="0"/>
</element>
<expression label="Tg" exp="Pos_1 + ((day / 365 * brT1) + 0.25, -1.55)" type="point" />
<element type="point" label="Tg">
<show object="true" label="false" ev="8"/>
<objColor r="255" g="127" b="0" alpha="0"/>
<layer val="1"/>
<labelMode val="0"/>
<selectionAllowed val="false"/>
<coords x="-5.50054794520548" y="4.03" z="1"/>
<pointSize val="7"/>
<pointStyle val="7"/>
</element>
<expression label="Text1" exp=""\huge \textcolor{#ff00ff}{當地時間}:" + (LaTeX[Mod[floor(t_1) + 12, 24]]) + ":\;" + (LaTeX[((t_1 - floor(t_1)) * 60)]) + "\\\huge \textcolor{red}{北}半球: \huge \textcolor{red}{" + (LaTeX[Element[Liste3, jzn]]) + "}\\ \huge\textcolor{#009900}{南}半球: \huge \textcolor{#009900}{" + (LaTeX[Element[Liste3, jzs]]) + "}\\\;\\\;\\|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec|"" />
<element type="text" label="Text1">
<show object="true" label="false" ev="8"/>
<objColor r="255" g="255" b="255" alpha="0"/>
<bgColor r="192" g="192" b="192" alpha="255"/>
<layer val="0"/>
<labelMode val="0"/>
<isLaTeX val="true"/>
<font serif="true" sizeM="0.7" size="-6" style="1"/>
<absoluteScreenLocation x="26" y="81"/>
</element>
</construction>
</geogebra>