import net.sf.openrocket.simulation.FlightDataBranch;
import net.sf.openrocket.simulation.FlightDataType;
import net.sf.openrocket.simulation.FlightEvent;
-import net.sf.openrocket.simulation.GUISimulationConditions;
+import net.sf.openrocket.simulation.SimulationOptions;
import net.sf.openrocket.startup.Application;
import net.sf.openrocket.util.BugException;
import net.sf.openrocket.util.MathUtil;
* Otherwise use version 1.0.
*/
+ // Check if design has simulations defined (version 1.3)
+ if (document.getSimulationCount() > 0) {
+ return FILE_VERSION_DIVISOR + 3;
+ }
+
// Check for motor definitions (version 1.2)
Iterator<RocketComponent> iterator = document.getRocket().iterator();
while (iterator.hasNext()) {
private void saveSimulation(Simulation simulation, double timeSkip) throws IOException {
- GUISimulationConditions cond = simulation.getConditions();
+ SimulationOptions cond = simulation.getOptions();
writeln("<simulation status=\"" + enumToXMLName(simulation.getStatus()) + "\">");
indent++;
writeElement("windturbulence", cond.getWindTurbulenceIntensity());
writeElement("launchaltitude", cond.getLaunchAltitude());
writeElement("launchlatitude", cond.getLaunchLatitude());
+ writeElement("launchlongitude", cond.getLaunchLongitude());
+ writeElement("geodeticmethod", cond.getGeodeticComputation().name().toLowerCase());
if (cond.isISAAtmosphere()) {
writeln("<atmosphere model=\"isa\"/>");