From 904f32d0ba918362fc3fc0474d716d3431eed406 Mon Sep 17 00:00:00 2001 From: JoePfeiffer Date: Thu, 4 Oct 2018 14:36:00 -0600 Subject: [PATCH] only consider active components in Barrowman equations --- .../aerodynamics/BarrowmanCalculator.java | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/core/src/net/sf/openrocket/aerodynamics/BarrowmanCalculator.java b/core/src/net/sf/openrocket/aerodynamics/BarrowmanCalculator.java index ad79ec07d..a47262b0e 100644 --- a/core/src/net/sf/openrocket/aerodynamics/BarrowmanCalculator.java +++ b/core/src/net/sf/openrocket/aerodynamics/BarrowmanCalculator.java @@ -785,24 +785,20 @@ public class BarrowmanCalculator extends AbstractAerodynamicCalculator { private void buildCalcMap(FlightConfiguration configuration) { Iterator iterator; - //System.err.println("> Building Calc Map."); calcMap = new HashMap(); - - iterator = configuration.getRocket().iterator(); - while (iterator.hasNext()) { - RocketComponent c = iterator.next(); - - if (!c.isAerodynamic()) + + for (RocketComponent comp: configuration.getActiveComponents()) { + if (!comp.isAerodynamic()) continue; - RocketComponentCalc calcObj = (RocketComponentCalc) Reflection.construct(BARROWMAN_PACKAGE, c, BARROWMAN_SUFFIX, c); + + RocketComponentCalc calcObj = (RocketComponentCalc) Reflection.construct(BARROWMAN_PACKAGE, comp, BARROWMAN_SUFFIX, comp); //String isNull = (null==calcObj?"null":"valid"); //System.err.println(" >> At component: "+c.getName() +"=="+c.getID()+". CalcObj is "+isNull); - calcMap.put(c, calcObj ); + calcMap.put(comp, calcObj ); } } - @Override public int getModID() { // Only cached data is stored, return constant mod ID