X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=core%2Fsrc%2Fnet%2Fsf%2Fopenrocket%2Ffile%2Fopenrocket%2FOpenRocketSaver.java;h=9378a455131ef739a2c1d632aa08b4a5dfedd15f;hb=edef47b52fd4f65e04629844bfbb833b084a2181;hp=0525a4ed58be061f68cbbe89071db7d130cb7a01;hpb=5a526e3de9261f5485ad7b519dc981fd884a7953;p=debian%2Fopenrocket diff --git a/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java b/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java index 0525a4ed..9378a455 100644 --- a/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java +++ b/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java @@ -24,6 +24,7 @@ import net.sf.openrocket.rocketcomponent.RecoveryDevice.DeployEvent; import net.sf.openrocket.rocketcomponent.Rocket; import net.sf.openrocket.rocketcomponent.RocketComponent; import net.sf.openrocket.rocketcomponent.TubeCoupler; +import net.sf.openrocket.simulation.CustomExpression; import net.sf.openrocket.simulation.FlightData; import net.sf.openrocket.simulation.FlightDataBranch; import net.sf.openrocket.simulation.FlightDataType; @@ -322,10 +323,25 @@ public class OpenRocketSaver extends RocketSaver { writeln("" + escapeXML(simulation.getName()) + ""); // TODO: MEDIUM: Other simulators/calculators + writeln("RK4Simulator"); writeln("BarrowmanCalculator"); - writeln(""); - indent++; + + // Write out custom expressions + if (!simulation.getCustomExpressions().isEmpty()){ + writeln(""); indent++; + for (CustomExpression expression : simulation.getCustomExpressions()){ + writeln(""); indent++; + writeElement("name", expression.getName()); + writeElement("symbol", expression.getSymbol()); + writeElement("unit", expression.getUnit()); + writeElement("expressionstring", expression.getExpressionString()); + indent--; writeln(""); + } + indent--; writeln(""); + } + + writeln(""); indent++; writeElement("configid", cond.getMotorConfigurationID()); writeElement("launchrodlength", cond.getLaunchRodLength()); @@ -359,7 +375,6 @@ public class OpenRocketSaver extends RocketSaver { writeElement("listener", escapeXML(s)); } - // Write basic simulation data FlightData data = simulation.getSimulatedData(); @@ -437,6 +452,14 @@ public class OpenRocketSaver extends RocketSaver { StringBuilder sb = new StringBuilder(); sb.append(" 0) + sb.append(","); + sb.append(escapeXML(types[i].getKey())); + } sb.append("\" types=\""); for (int i = 0; i < types.length; i++) { if (i > 0)