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)