- Launch Lugs correctly position themselves
(used to default to the centerline of the rocket)
added LaunchLugTest class
- Booster Sets automatically adjust radial distance
- based on own, and others' body radius.
- Refactored shiftCoordinates(...) => getInstanceLocations()
- MassCalculator class:
Debug toggle will print debug-level output to stderr
fixed / reimplemented:
getCG(...) -> getCM( FlightConfiguration, MassCalcType);
-> getRotationalInertia( FlightConfiguration, MassCalcType);
-> getLongitudinalInertia( FlightConfiguration, MassCalcType);
- MassData class:
can now add MassData classes
Instanced componets w/children:
take into account component mass...
propellantMass field is vague: no indication whether it's include in the inertia or not.
longitudinalInertia => rollMOI (?)
rotationalInertia => yaw / pitch MOI (?)
assorted other fixes
- added unit test classes:
... .masscalc.MassCalculatorTest;
... .masscalc.MassDataTest;
-Each configuration has an fcid (FlightConfigurationId)
-FlightConfigurationID is a new type.
- small wrapper class around String
- provides better traceability, error detection, readability
- the fcid is now the hashMap key for any FlightConfigurationSet
-rename Configuration => FlightConfiguration (to be more explicit about class purpose)
-combine MotorInstance =><= motorConfiguration
-Refactor ThrustCurveMotorInstance into an outer public class
-MotorId => (ren) => MotorInstanceID
-fold IgnitionConfiguration => <MotorInstance>.<IgnitionConfiguration>
-Created IgnitionEvent class
-Implemented partial checking for file version 1.8
-rename FlightConfigurationImpl => FlightConfigurationSet
-rename MotorFlightConfigurationImpl => MotorConfigurationSet
- Rockets now list all configurations
-implemented a FlightConfigurationSet of FlightConfigurations
-Configuration refactor
-stages are toggled individually
-removed set-up-to-stage method
-MotorInstance refactor: multiple Lists -> one map<MotorId,MotorInstance>
moved most of the fields to MotorInstance.java
Model
Refactored code from AxialStage, BoosterSet, PodSet => ComponentAssembly
GUI
BoosterSet: Fixed bugs, allowed boosters and pods to be correctly located.
- Added Test case in TestMotorLoader.java
- Added Test load file 'test3.rse' which would previously raise an IOException on load.
- Added this test case to the 'testGeneralMotorLoader' method as well.
- Adjusted the digest string so that 'test3.rse' will pass the unit tests.
- TestMotorLoader currently passes 5/5 unit tests.
Separate swing application code from core code. Moved a bunch of sources
and libraries around. Created new eclipse project.
Further refinements to make it build.
Update gitignore.
Added @Ignore and FIXME to failing LogLevelBufferLoggerTest
Fixed failing unitest IntegrationTest.java
Added test rockets for the various file versions of .ork
Changed TestMutex.java to write messages to log saying that certain exceptions
that appear in log during unittests are ok because the test can't catch them.
config file that set logging to stdout and level to Error. Modified
unittest target used by travis-ci to use new logback config file to
reduce clutter in unittest output. Commented out superfluous
System.println's from various unit tests to also reduce clutter.
create the application framework. It is roughly equivalent to the first
step of bootstrapping with ApplicationModule. Modified unit tests which
require a more complete application framework.