mirror of
				https://github.com/christiaangoossens/Planetary-Orbit-Simulator
				synced 2025-11-04 04:15:47 +00:00 
			
		
		
		
	Add aphelion & perihelion calculations
This commit is contained in:
		
							
								
								
									
										166
									
								
								simulator/.idea/workspace.xml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										166
									
								
								simulator/.idea/workspace.xml
									
									
									
										generated
									
									
									
								
							@@ -7,11 +7,15 @@
 | 
				
			|||||||
  </component>
 | 
					  </component>
 | 
				
			||||||
  <component name="ChangeListManager">
 | 
					  <component name="ChangeListManager">
 | 
				
			||||||
    <list default="true" id="17f368cb-44f8-4101-9a29-49a0f4ff1f92" name="Default" comment="Update workspace">
 | 
					    <list default="true" id="17f368cb-44f8-4101-9a29-49a0f4ff1f92" name="Default" comment="Update workspace">
 | 
				
			||||||
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/Object.class" afterPath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/Object.class" />
 | 
				
			||||||
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/Simulator.class" afterPath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/Simulator.class" />
 | 
				
			||||||
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/dataWriter/DataWriter.class" afterPath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/dataWriter/DataWriter.class" />
 | 
				
			||||||
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/mathUtils/AU.class" afterPath="$PROJECT_DIR$/out/production/simulator/com/verictas/pos/simulator/mathUtils/AU.class" />
 | 
				
			||||||
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
 | 
				
			||||||
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java" />
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java" />
 | 
				
			||||||
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java" />
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java" />
 | 
				
			||||||
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java" />
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java" />
 | 
				
			||||||
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java" />
 | 
					      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java" />
 | 
				
			||||||
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/com/verictas/pos/simulator/mathUtils/AU.java" afterPath="$PROJECT_DIR$/src/com/verictas/pos/simulator/mathUtils/AU.java" />
 | 
					 | 
				
			||||||
    </list>
 | 
					    </list>
 | 
				
			||||||
    <ignored path="simulator.iws" />
 | 
					    <ignored path="simulator.iws" />
 | 
				
			||||||
    <ignored path=".idea/workspace.xml" />
 | 
					    <ignored path=".idea/workspace.xml" />
 | 
				
			||||||
@@ -68,12 +72,12 @@
 | 
				
			|||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/WritingException.java" />
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/WritingException.java" />
 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/DataWriter.java" />
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/DataWriter.java" />
 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/WritingException.java" />
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/WritingException.java" />
 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/SimulatorConfig.java" />
 | 
					 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java" />
 | 
					 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java" />
 | 
					 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java" />
 | 
					 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/mathUtils/AU.java" />
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/mathUtils/AU.java" />
 | 
				
			||||||
        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java" />
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java" />
 | 
				
			||||||
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java" />
 | 
				
			||||||
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/SimulatorConfig.java" />
 | 
				
			||||||
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java" />
 | 
				
			||||||
 | 
					        <option value="$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java" />
 | 
				
			||||||
      </list>
 | 
					      </list>
 | 
				
			||||||
    </option>
 | 
					    </option>
 | 
				
			||||||
  </component>
 | 
					  </component>
 | 
				
			||||||
@@ -159,6 +163,46 @@
 | 
				
			|||||||
              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
            </PATH_ELEMENT>
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
          </PATH>
 | 
					          </PATH>
 | 
				
			||||||
 | 
					          <PATH>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="simulator" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="simulator" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="src" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="simulator" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					          </PATH>
 | 
				
			||||||
 | 
					          <PATH>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="simulator" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="simulator" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="src" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="simulator" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					            <PATH_ELEMENT>
 | 
				
			||||||
 | 
					              <option name="myItemId" value="dataWriter" />
 | 
				
			||||||
 | 
					              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
 | 
				
			||||||
 | 
					            </PATH_ELEMENT>
 | 
				
			||||||
 | 
					          </PATH>
 | 
				
			||||||
        </subPane>
 | 
					        </subPane>
 | 
				
			||||||
      </pane>
 | 
					      </pane>
 | 
				
			||||||
    </panes>
 | 
					    </panes>
 | 
				
			||||||
@@ -473,11 +517,11 @@
 | 
				
			|||||||
      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
 | 
					      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.71881604" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Run" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.3012685" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Designer" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Designer" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Project" active="true" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.17864583" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
 | 
					      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.17864583" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
 | 
				
			||||||
      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
      <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
 | 
					      <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
 | 
				
			||||||
@@ -509,7 +553,7 @@
 | 
				
			|||||||
  </component>
 | 
					  </component>
 | 
				
			||||||
  <component name="XDebuggerManager">
 | 
					  <component name="XDebuggerManager">
 | 
				
			||||||
    <breakpoint-manager>
 | 
					    <breakpoint-manager>
 | 
				
			||||||
      <option name="time" value="7" />
 | 
					      <option name="time" value="8" />
 | 
				
			||||||
    </breakpoint-manager>
 | 
					    </breakpoint-manager>
 | 
				
			||||||
    <watches-manager />
 | 
					    <watches-manager />
 | 
				
			||||||
  </component>
 | 
					  </component>
 | 
				
			||||||
@@ -916,56 +960,6 @@
 | 
				
			|||||||
        </state>
 | 
					        </state>
 | 
				
			||||||
      </provider>
 | 
					      </provider>
 | 
				
			||||||
    </entry>
 | 
					    </entry>
 | 
				
			||||||
    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java">
 | 
					 | 
				
			||||||
      <provider selected="true" editor-type-id="text-editor">
 | 
					 | 
				
			||||||
        <state relative-caret-position="331">
 | 
					 | 
				
			||||||
          <caret line="20" column="0" selection-start-line="20" selection-start-column="0" selection-end-line="20" selection-end-column="0" />
 | 
					 | 
				
			||||||
          <folding>
 | 
					 | 
				
			||||||
            <element signature="imports" expanded="true" />
 | 
					 | 
				
			||||||
          </folding>
 | 
					 | 
				
			||||||
        </state>
 | 
					 | 
				
			||||||
      </provider>
 | 
					 | 
				
			||||||
    </entry>
 | 
					 | 
				
			||||||
    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java">
 | 
					 | 
				
			||||||
      <provider selected="true" editor-type-id="text-editor">
 | 
					 | 
				
			||||||
        <state relative-caret-position="430">
 | 
					 | 
				
			||||||
          <caret line="162" column="0" selection-start-line="162" selection-start-column="0" selection-end-line="162" selection-end-column="0" />
 | 
					 | 
				
			||||||
          <folding>
 | 
					 | 
				
			||||||
            <element signature="imports" expanded="true" />
 | 
					 | 
				
			||||||
            <element signature="method#getSpeed#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#getPosition#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#setAcceleration#1;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#getAcceleration#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#setOldAcceleration#1;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#getOldAcceleration#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#toString#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#getForceOnObject#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#getDistance#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#updatePosition#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#updateSpeed#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#enactForceOnObject#0;class#Object#0" expanded="false" />
 | 
					 | 
				
			||||||
          </folding>
 | 
					 | 
				
			||||||
        </state>
 | 
					 | 
				
			||||||
      </provider>
 | 
					 | 
				
			||||||
    </entry>
 | 
					 | 
				
			||||||
    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java">
 | 
					 | 
				
			||||||
      <provider selected="true" editor-type-id="text-editor">
 | 
					 | 
				
			||||||
        <state relative-caret-position="187">
 | 
					 | 
				
			||||||
          <caret line="11" column="23" selection-start-line="11" selection-start-column="23" selection-end-line="11" selection-end-column="23" />
 | 
					 | 
				
			||||||
          <folding>
 | 
					 | 
				
			||||||
            <element signature="imports" expanded="true" />
 | 
					 | 
				
			||||||
          </folding>
 | 
					 | 
				
			||||||
        </state>
 | 
					 | 
				
			||||||
      </provider>
 | 
					 | 
				
			||||||
    </entry>
 | 
					 | 
				
			||||||
    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/SimulatorConfig.java">
 | 
					 | 
				
			||||||
      <provider selected="true" editor-type-id="text-editor">
 | 
					 | 
				
			||||||
        <state relative-caret-position="153">
 | 
					 | 
				
			||||||
          <caret line="9" column="1" selection-start-line="9" selection-start-column="1" selection-end-line="9" selection-end-column="1" />
 | 
					 | 
				
			||||||
          <folding />
 | 
					 | 
				
			||||||
        </state>
 | 
					 | 
				
			||||||
      </provider>
 | 
					 | 
				
			||||||
    </entry>
 | 
					 | 
				
			||||||
    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/mathUtils/AU.java">
 | 
					    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/mathUtils/AU.java">
 | 
				
			||||||
      <provider selected="true" editor-type-id="text-editor">
 | 
					      <provider selected="true" editor-type-id="text-editor">
 | 
				
			||||||
        <state relative-caret-position="578">
 | 
					        <state relative-caret-position="578">
 | 
				
			||||||
@@ -995,20 +989,68 @@
 | 
				
			|||||||
        </state>
 | 
					        </state>
 | 
				
			||||||
      </provider>
 | 
					      </provider>
 | 
				
			||||||
    </entry>
 | 
					    </entry>
 | 
				
			||||||
 | 
					    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/SimulatorConfig.java">
 | 
				
			||||||
 | 
					      <provider selected="true" editor-type-id="text-editor">
 | 
				
			||||||
 | 
					        <state relative-caret-position="170">
 | 
				
			||||||
 | 
					          <caret line="10" column="0" selection-start-line="10" selection-start-column="0" selection-end-line="10" selection-end-column="0" />
 | 
				
			||||||
 | 
					          <folding />
 | 
				
			||||||
 | 
					        </state>
 | 
				
			||||||
 | 
					      </provider>
 | 
				
			||||||
 | 
					    </entry>
 | 
				
			||||||
    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java">
 | 
					    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/dataWriter/DataWriter.java">
 | 
				
			||||||
      <provider selected="true" editor-type-id="text-editor">
 | 
					      <provider selected="true" editor-type-id="text-editor">
 | 
				
			||||||
        <state relative-caret-position="1054">
 | 
					        <state relative-caret-position="361">
 | 
				
			||||||
          <caret line="132" column="21" selection-start-line="132" selection-start-column="21" selection-end-line="132" selection-end-column="21" />
 | 
					          <caret line="99" column="0" selection-start-line="99" selection-start-column="0" selection-end-line="99" selection-end-column="0" />
 | 
				
			||||||
          <folding>
 | 
					          <folding>
 | 
				
			||||||
            <element signature="imports" expanded="true" />
 | 
					            <element signature="imports" expanded="true" />
 | 
				
			||||||
            <element signature="method#DataWriter#0;class#DataWriter#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#write#0;class#DataWriter#0" expanded="false" />
 | 
					            <element signature="method#write#0;class#DataWriter#0" expanded="false" />
 | 
				
			||||||
            <element signature="method#write#1;class#DataWriter#0" expanded="false" />
 | 
					 | 
				
			||||||
            <element signature="method#save#0;class#DataWriter#0" expanded="false" />
 | 
					            <element signature="method#save#0;class#DataWriter#0" expanded="false" />
 | 
				
			||||||
          </folding>
 | 
					          </folding>
 | 
				
			||||||
        </state>
 | 
					        </state>
 | 
				
			||||||
      </provider>
 | 
					      </provider>
 | 
				
			||||||
    </entry>
 | 
					    </entry>
 | 
				
			||||||
 | 
					    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/Object.java">
 | 
				
			||||||
 | 
					      <provider selected="true" editor-type-id="text-editor">
 | 
				
			||||||
 | 
					        <state relative-caret-position="352">
 | 
				
			||||||
 | 
					          <caret line="24" column="49" selection-start-line="24" selection-start-column="46" selection-end-line="24" selection-end-column="49" />
 | 
				
			||||||
 | 
					          <folding>
 | 
				
			||||||
 | 
					            <element signature="imports" expanded="true" />
 | 
				
			||||||
 | 
					            <element signature="method#getSpeed#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#getPosition#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#setAcceleration#1;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#getAcceleration#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#setOldAcceleration#1;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#getOldAcceleration#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#toString#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#getForceOnObject#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#getDistance#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#updatePosition#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#updateSpeed#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					            <element signature="method#enactForceOnObject#0;class#Object#0" expanded="false" />
 | 
				
			||||||
 | 
					          </folding>
 | 
				
			||||||
 | 
					        </state>
 | 
				
			||||||
 | 
					      </provider>
 | 
				
			||||||
 | 
					    </entry>
 | 
				
			||||||
 | 
					    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/Main.java">
 | 
				
			||||||
 | 
					      <provider selected="true" editor-type-id="text-editor">
 | 
				
			||||||
 | 
					        <state relative-caret-position="279">
 | 
				
			||||||
 | 
					          <caret line="35" column="0" selection-start-line="35" selection-start-column="0" selection-end-line="35" selection-end-column="0" />
 | 
				
			||||||
 | 
					          <folding>
 | 
				
			||||||
 | 
					            <element signature="imports" expanded="true" />
 | 
				
			||||||
 | 
					          </folding>
 | 
				
			||||||
 | 
					        </state>
 | 
				
			||||||
 | 
					      </provider>
 | 
				
			||||||
 | 
					    </entry>
 | 
				
			||||||
 | 
					    <entry file="file://$PROJECT_DIR$/src/com/verictas/pos/simulator/Simulator.java">
 | 
				
			||||||
 | 
					      <provider selected="true" editor-type-id="text-editor">
 | 
				
			||||||
 | 
					        <state relative-caret-position="1598">
 | 
				
			||||||
 | 
					          <caret line="94" column="82" selection-start-line="94" selection-start-column="82" selection-end-line="94" selection-end-column="82" />
 | 
				
			||||||
 | 
					          <folding>
 | 
				
			||||||
 | 
					            <element signature="imports" expanded="true" />
 | 
				
			||||||
 | 
					          </folding>
 | 
				
			||||||
 | 
					        </state>
 | 
				
			||||||
 | 
					      </provider>
 | 
				
			||||||
 | 
					    </entry>
 | 
				
			||||||
  </component>
 | 
					  </component>
 | 
				
			||||||
  <component name="masterDetails">
 | 
					  <component name="masterDetails">
 | 
				
			||||||
    <states>
 | 
					    <states>
 | 
				
			||||||
 
 | 
				
			|||||||
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							@@ -21,19 +21,20 @@ public class Main {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    public static void main(String[] args) {
 | 
					    public static void main(String[] args) {
 | 
				
			||||||
        /**
 | 
					        /**
 | 
				
			||||||
         * Object definitions (in 1990)
 | 
					         * Object definitions
 | 
				
			||||||
         */
 | 
					         */
 | 
				
			||||||
        Object sun = new Object("Sun", 1.988544E30, AU.convertToMeter(new Vector3d(3.621484938699030E-03,3.203347049968909E-03,-1.609087138389905E-04)), AU.convertToMetersPerSecond(new Vector3d(-1.730306264794065E-06,6.909301960615850E-06,3.332250766613383E-08)));
 | 
					        Object sun = new Object("Sun", 1.988544E30, AU.convertToMeter(new Vector3d(3.621484938699030E-03,3.203347049968909E-03,-1.609087138389905E-04)), AU.convertToMetersPerSecond(new Vector3d(-1.730306264794065E-06,6.909301960615850E-06,3.332250766613383E-08)));
 | 
				
			||||||
        //Object venus = new Object("Venus", 48.685E23, AU.convertToMeter(new Vector3d(-3.786926829662159E-01,-6.122709221027441E-01,1.346180701578967E-02)), AU.convertToMetersPerSecond(new Vector3d(1.703979708314098E-02,-1.075790617185284E-02,-1.130972411646143E-03)));
 | 
					        //Object venus = new Object("Venus", 48.685E23, AU.convertToMeter(new Vector3d(-3.786926829662159E-01,-6.122709221027441E-01,1.346180701578967E-02)), AU.convertToMetersPerSecond(new Vector3d(1.703979708314098E-02,-1.075790617185284E-02,-1.130972411646143E-03)));
 | 
				
			||||||
        Object earth = new Object("Earth", 5.97219E24, AU.convertToMeter(new Vector3d(1.000272608326749E+00,-1.305632418724720E-01,-1.614384880329670E-04)), AU.convertToMetersPerSecond(new Vector3d(2.003180730888720E-03,1.698793770993201E-02,5.869001824818362E-08)));
 | 
					        Object earth = new Object("Earth", 5.97219E24, AU.convertToMeter(new Vector3d(1.000272608326749E+00,-1.305632418724720E-01,-1.614384880329670E-04)), AU.convertToMetersPerSecond(new Vector3d(2.003180730888720E-03,1.698793770993201E-02,5.869001824818362E-08)));
 | 
				
			||||||
      //  Object mars = new Object("Mars", 6.4185E23, AU.convertToMeter(new Vector3d(8.638055532014732E-01,-1.094520306989018E+00,-4.427515002554464E-02)), AU.convertToMetersPerSecond(new Vector3d(1.154235320339802E-02,9.839355267552327E-03,-7.723750026136471E-05)));
 | 
					      //  Object mars = new Object("Mars", 6.4185E23, AU.convertToMeter(new Vector3d(8.638055532014732E-01,-1.094520306989018E+00,-4.427515002554464E-02)), AU.convertToMetersPerSecond(new Vector3d(1.154235320339802E-02,9.839355267552327E-03,-7.723750026136471E-05)));
 | 
				
			||||||
       // Object jupiter = new Object("Jupiter", 1898.13E24, AU.convertToMeter(new Vector3d(-5.440309619306835E+00,-2.383659935837559E-01,1.226571001615609E-01)), AU.convertToMetersPerSecond(new Vector3d(2.422143907277735E-04,-7.182284468246539E-03,2.440789748210396E-05)));
 | 
					       // Object jupiter = new Object("Jupiter", 1898.13E24, AU.convertToMeter(new Vector3d(-5.440309619306835E+00,-2.383659935837559E-01,1.226571001615609E-01)), AU.convertToMetersPerSecond(new Vector3d(2.422143907277735E-04,-7.182284468246539E-03,2.440789748210396E-05)));
 | 
				
			||||||
 | 
					        Object moon = new Object("The Moon", 734.9E20, AU.convertToMeter(new Vector3d(1.002390058141768E+00,-1.318677081380600E-01,-1.051759034600983E-04)), AU.convertToMetersPerSecond(new Vector3d(2.294349896503608E-03,1.752303034437222E-02,-5.522655228080146E-05)));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /**
 | 
					        /**
 | 
				
			||||||
         * Object listing
 | 
					         * Object listing
 | 
				
			||||||
         */
 | 
					         */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        Object[] objects = {sun, earth};
 | 
					        Object[] objects = {sun, earth, moon};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /**
 | 
					        /**
 | 
				
			||||||
         * Run the simulator for the specified objects
 | 
					         * Run the simulator for the specified objects
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -10,6 +10,11 @@ public class Object {
 | 
				
			|||||||
    public Vector3d acceleration;
 | 
					    public Vector3d acceleration;
 | 
				
			||||||
    public Vector3d oldAcceleration;
 | 
					    public Vector3d oldAcceleration;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public Vector3d aphelion;
 | 
				
			||||||
 | 
					    public Vector3d perihelion;
 | 
				
			||||||
 | 
					    public double aphelionDistance = 0;
 | 
				
			||||||
 | 
					    public double perihelionDistance = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public String name;
 | 
					    public String name;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private double gravitationalConstant = 6.67384E-11;
 | 
					    private double gravitationalConstant = 6.67384E-11;
 | 
				
			||||||
@@ -197,4 +202,38 @@ public class Object {
 | 
				
			|||||||
        acceleration.scale(factor);
 | 
					        acceleration.scale(factor);
 | 
				
			||||||
        this.acceleration = acceleration;
 | 
					        this.acceleration = acceleration;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /**
 | 
				
			||||||
 | 
					     * Processes the aphelion & perihelion
 | 
				
			||||||
 | 
					     * @param sun
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
 | 
					    public void processAphelionAndPerihelion(Object sun) {
 | 
				
			||||||
 | 
					        double sunDistance = this.getDistance(sun).length();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /**
 | 
				
			||||||
 | 
					         * Set the defaults
 | 
				
			||||||
 | 
					         */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (this.aphelionDistance == 0) {
 | 
				
			||||||
 | 
					            this.aphelionDistance = sunDistance;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (this.perihelionDistance == 0) {
 | 
				
			||||||
 | 
					            this.perihelionDistance = sunDistance;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        /**
 | 
				
			||||||
 | 
					         * Check if the aphelion or perihelion should be changed
 | 
				
			||||||
 | 
					         */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (sunDistance > aphelionDistance) {
 | 
				
			||||||
 | 
					            this.aphelion = position;
 | 
				
			||||||
 | 
					            this.aphelionDistance = sunDistance;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (sunDistance < perihelionDistance) {
 | 
				
			||||||
 | 
					            this.perihelion = position;
 | 
				
			||||||
 | 
					            this.perihelionDistance = sunDistance;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -38,7 +38,7 @@ public class Simulator {
 | 
				
			|||||||
             */
 | 
					             */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            for(int i = 0; i < objects.length; i++) {
 | 
					            for(int i = 0; i < objects.length; i++) {
 | 
				
			||||||
                writer.write(objects[i].name, objects[i].position, objects[i].speed, objects[i].oldAcceleration, objects[i].acceleration, objects[i].mass);
 | 
					                writer.write(objects[i], objects[0]);
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            /**
 | 
					            /**
 | 
				
			||||||
@@ -65,7 +65,13 @@ public class Simulator {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
                for(int i = 0; i < objects.length; i++) {
 | 
					                for(int i = 0; i < objects.length; i++) {
 | 
				
			||||||
                    objects[i].updateSpeed(time);
 | 
					                    objects[i].updateSpeed(time);
 | 
				
			||||||
                    writer.write(objects[i].name, objects[i].position, objects[i].speed, objects[i].oldAcceleration, objects[i].acceleration, objects[i].mass);
 | 
					                    writer.write(objects[i], objects[0]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    /**
 | 
				
			||||||
 | 
					                     * Do some processing to get the aphelion & perihelion
 | 
				
			||||||
 | 
					                     */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    objects[i].processAphelionAndPerihelion(objects[0]);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                /**
 | 
					                /**
 | 
				
			||||||
@@ -79,6 +85,15 @@ public class Simulator {
 | 
				
			|||||||
            writer.save();
 | 
					            writer.save();
 | 
				
			||||||
            System.out.println("========== Simulation Finished ==========");
 | 
					            System.out.println("========== Simulation Finished ==========");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            // TEST
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            System.out.println("\n\n============== Simulation data =============");
 | 
				
			||||||
 | 
					            System.out.println("Position during aphelion: " + objects[1].aphelion);
 | 
				
			||||||
 | 
					            System.out.println("Distance from the sun during aphelion in km: " + objects[1].aphelionDistance);
 | 
				
			||||||
 | 
					            System.out.println("Position during perihelion: " + objects[1].perihelion);
 | 
				
			||||||
 | 
					            System.out.println("Distance from the sun during perihelion in km: " + objects[1].perihelionDistance);
 | 
				
			||||||
 | 
					            System.out.println("===========================================\n\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            /**
 | 
					            /**
 | 
				
			||||||
             * Display information about the program runtime
 | 
					             * Display information about the program runtime
 | 
				
			||||||
             */
 | 
					             */
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,6 @@
 | 
				
			|||||||
package com.verictas.pos.simulator.dataWriter;
 | 
					package com.verictas.pos.simulator.dataWriter;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.verictas.pos.simulator.Object;
 | 
				
			||||||
import com.verictas.pos.simulator.SimulatorConfig;
 | 
					import com.verictas.pos.simulator.SimulatorConfig;
 | 
				
			||||||
import com.verictas.pos.simulator.mathUtils.AU;
 | 
					import com.verictas.pos.simulator.mathUtils.AU;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -47,7 +48,7 @@ public class DataWriter {
 | 
				
			|||||||
             * Open a file to write to and write the header
 | 
					             * Open a file to write to and write the header
 | 
				
			||||||
             */
 | 
					             */
 | 
				
			||||||
            this.writer = new FileWriter(path);
 | 
					            this.writer = new FileWriter(path);
 | 
				
			||||||
            this.writer.write("Object" + DELIMITER + "Position (m)" + DELIMITER + "Position (AU)" + DELIMITER + "Speed (m/s)" + DELIMITER + "Speed (AU/day)" + DELIMITER + "Old Acceleration" + DELIMITER + "Acceleration" + DELIMITER + "Mass" + NEW_LINE);
 | 
					            this.writer.write("Object" + DELIMITER + "Position (m)" + DELIMITER + "Position (AU)" + DELIMITER+ "Distance from the sun (m)" + DELIMITER + "Speed (m/s)" + DELIMITER + "Speed (AU/day)" + DELIMITER + "Old Acceleration" + DELIMITER + "Acceleration" + DELIMITER + "Mass" + NEW_LINE);
 | 
				
			||||||
            this.counter++;
 | 
					            this.counter++;
 | 
				
			||||||
        } catch(IOException e) {
 | 
					        } catch(IOException e) {
 | 
				
			||||||
            throw new WritingException("The destination file couldn't be created.");
 | 
					            throw new WritingException("The destination file couldn't be created.");
 | 
				
			||||||
@@ -78,22 +79,29 @@ public class DataWriter {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Writes some data about the current object to the file
 | 
					     *
 | 
				
			||||||
     * @param id String
 | 
					     * @param object The object you want to write data about
 | 
				
			||||||
     * @param position Vector3d
 | 
					     * @param reference The system's star
 | 
				
			||||||
     * @param speed Vector3d
 | 
					 | 
				
			||||||
     * @param oldAcceleration Vector3d
 | 
					 | 
				
			||||||
     * @param acceleration Vector3d
 | 
					 | 
				
			||||||
     * @param mass double
 | 
					 | 
				
			||||||
     * @throws WritingException
 | 
					     * @throws WritingException
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public void write(String id, Vector3d position, Vector3d speed, Vector3d oldAcceleration, Vector3d acceleration, double mass) throws WritingException {
 | 
					    public void write(Object object, Object reference) throws WritingException {
 | 
				
			||||||
 | 
					        String id = object.name;
 | 
				
			||||||
 | 
					        Vector3d position = object.position;
 | 
				
			||||||
 | 
					        Vector3d speed = object.speed;
 | 
				
			||||||
 | 
					        Vector3d oldAcceleration = object.oldAcceleration;
 | 
				
			||||||
 | 
					        Vector3d acceleration = object.acceleration;
 | 
				
			||||||
 | 
					        double mass = object.mass;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if (this.writer == null) {
 | 
					        if (this.writer == null) {
 | 
				
			||||||
            throw new WritingException("The writer isn't defined yet");
 | 
					            throw new WritingException("The writer isn't defined yet");
 | 
				
			||||||
        } else {
 | 
					        } else {
 | 
				
			||||||
            try {
 | 
					            try {
 | 
				
			||||||
                if (this.counter % SimulatorConfig.skipLines == 0) {
 | 
					                if (this.counter % SimulatorConfig.skipLines == 0) {
 | 
				
			||||||
                    this.writer.append(id + DELIMITER + position.toString() + DELIMITER + AU.convertFromMeter(position).toString() + DELIMITER + speed.toString() + DELIMITER + AU.convertFromMetersPerSecond(speed).toString() + DELIMITER + oldAcceleration.toString() + DELIMITER + acceleration.toString() + DELIMITER + String.valueOf(mass) + NEW_LINE);
 | 
					
 | 
				
			||||||
 | 
					                    // Calculate the distance to the sun
 | 
				
			||||||
 | 
					                    double sunDistance = object.getDistance(reference).length();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                    this.writer.append(id + DELIMITER + position.toString() + DELIMITER + AU.convertFromMeter(position).toString() + DELIMITER + String.valueOf(sunDistance) + DELIMITER + speed.toString() + DELIMITER + AU.convertFromMetersPerSecond(speed).toString() + DELIMITER + oldAcceleration.toString() + DELIMITER + acceleration.toString() + DELIMITER + String.valueOf(mass) + NEW_LINE);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
                this.counter++;
 | 
					                this.counter++;
 | 
				
			||||||
            } catch (Exception e) {
 | 
					            } catch (Exception e) {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user