import net.sf.openrocket.simulation.FlightDataBranch;
import net.sf.openrocket.simulation.SimulationStatus;
import net.sf.openrocket.simulation.exception.SimulationException;
import net.sf.openrocket.simulation.listeners.AbstractSimulationListener;
import net.sf.openrocket.simulation.FlightDataBranch;
import net.sf.openrocket.simulation.SimulationStatus;
import net.sf.openrocket.simulation.exception.SimulationException;
import net.sf.openrocket.simulation.listeners.AbstractSimulationListener;
private final List<CustomExpression> expressions;
public CustomExpressionSimulationListener(List<CustomExpression> expressions) {
private final List<CustomExpression> expressions;
public CustomExpressionSimulationListener(List<CustomExpression> expressions) {
// Calculate values for custom expressions
FlightDataBranch data = status.getFlightData();
for (CustomExpression expression : expressions ) {
// Calculate values for custom expressions
FlightDataBranch data = status.getFlightData();
for (CustomExpression expression : expressions ) {
- data.setValue(expression.getType(), expression.evaluateDouble(status));
+ double value = expression.evaluateDouble(status);
+ //log.debug("Setting value of custom expression "+expression.toString()+" = "+value);
+ data.setValue(expression.getType(), value);