Esempio n. 1
0
 public GravitySim(Canvas simulationCanvas, MainPage simulationPage, CoreDispatcher dispatcher)
 {
     bodies    = new List <Body>();
     simCanvas = simulationCanvas;
     simPage   = simulationPage;
     simSpace  = new SimulationSpace(SimulationSpace.Space.Null);
     renderer  = new Renderer(simSpace, simCanvas, dispatcher, simPage);
     // accelerations default to null, they're newed when they're needed
     simCalcSettings          = new CalculationSettings();
     simElapsedTime           = 0.0;
     checkSim                 = false;
     simRounding              = 0;
     accelerationLimitOn      = false;
     minimumSeparationSquared = 1.0;
     SpeedFactor              = 1.0;
 }
Esempio n. 2
0
 public void ClearSim()
 {
     bodies.Clear();
     Body.ResetBodyCount();
     // simCanvas never changes
     // simPage never changes
     SetSimSpace(new SimulationSpace(SimulationSpace.Space.Null));
     renderer.ClearSim();
     accelerations            = null;
     simCalcSettings          = new CalculationSettings();
     simElapsedTime           = 0.0;
     checkSim                 = false;
     simRounding              = 0;
     accelerationLimitOn      = false;
     minimumSeparationSquared = 1.0;
     SpeedFactor              = 1.0;
 }
Esempio n. 3
0
 public void SetCalculationSettings(CalculationSettings calculationSettings) => simCalcSettings = calculationSettings;