1448 Commits

Author SHA1 Message Date
Daniel_M_Williams
729effd690 [Bugfix] Merged FlightConfiguration MotorInstanceConfiguration
fixed ignition configuration load / save
2015-12-03 21:44:34 -05:00
Daniel_M_Williams
890d390b4b [Refactor]ed SimpleStack class to JDK 'ArrayDeque' class 2015-12-03 13:40:21 -05:00
Daniel_M_Williams
defcf24c86 [Bugfix] Fixed several Config Id-Simulation Display Issues
- Initial selected configuration is the last loaded
- Correctly loads the correct config Id for each simulation
- Can correctly display the Config Id for each sim. (both in table, and edit)
2015-12-02 19:44:55 -05:00
Daniel_M_Williams
040c451a3d [Bugfix] Improves FlightConfiguration selection, readability
-ParameterSetModel fixed - controlled configuration in the main window. et al.
    - now implements a generic ComboBoxModel<T>, instead of just a FlightConfigurationId.
2015-12-01 18:43:21 -05:00
Daniel_M_Williams
c65fb80dbf [Bugfix] Various small tweaks, Improved Configuration Naming
- events from a rocket start out disabled, and are turned on by the RocketLoader
- FlightConfgurations will once again describe their contained motors, if not explicitly named otherwise
- Refined ComponentChangeEvent type enum
- Added other miscellaneous debugging statements and methods
2015-12-01 14:38:48 -05:00
Daniel_M_Williams
b1108a0c83 [bugfix] refixed motor loading code. 2015-11-29 17:42:14 -05:00
Daniel_M_Williams
1a036904c0 [bugfix] .ork files load motors correctly (again). 2015-11-26 10:22:40 -05:00
Daniel_M_Williams
a43fbe79bc [bugfix] 'remove motor' button now works correctly 2015-11-26 09:05:08 -05:00
Daniel_M_Williams
a32b303069 [bugfix] fixed minor initialization bug 2015-11-25 19:27:34 -05:00
Daniel_M_Williams
12cda5b722 small internal API refinements 2015-11-25 18:02:25 -05:00
bkuker
2d465a3576 Simple rail button render 2015-11-24 13:13:17 -05:00
bkuker
a1f2dc35fc implement getComponentBounds for Rail Button to get 3d wireframe 2015-11-24 12:57:36 -05:00
Daniel_M_Williams
657c407ba5 [UI] fixed RailButton UI, file I/O 2015-11-23 23:54:07 -05:00
Daniel_M_Williams
1ce452265c [Feature] Implemented RailButton Shapes (2D only)
RailButtons loaded, edited, and displayed (in 2d, and 3d)
2015-11-23 14:40:57 -05:00
Daniel_M_Williams
82e3a7ff1c [Feature] Implemented more RailButton code:
RailButtons can be loaded, and edited, but not really displayed.
    - data entry has defined file parameters, but needs some debugging.
    - added icons for component creation.  The button just needs to be uncommented
    - display works, but only for rotation = 0;
       - requires a new type of shape drawing.  Not inherently hard, just tedious.
2015-11-22 22:28:51 -05:00
Daniel_M_Williams
643fa71478 [Feature] Implemented RailButton IO code. 2015-11-22 16:25:36 -05:00
Daniel_M_Williams
52ee7ba750 [Feature] Implemented file saving for Parallel Stage auto-positioning.
radialoffset may be set to "auto" instead of a number.  In this case, the
radial offset of the stage will be auto positioned to just touch its
parent stage. (offset = radius_parent + radius_p-stage)
2015-11-22 10:41:24 -05:00
Daniel_M_Williams
e3250c9a91 added exploratory code for non-axisymmetric CPs 2015-11-22 10:12:30 -05:00
Kevin Ruland
4924773c3a Changed to using Import/Export file menu functions to handle RockSim
formatted files.  Save & Save As will only save in ork format.
2015-11-21 21:37:57 -06:00
Daniel_M_Williams
0972ee389a Merge branch 'parallel_staging' of https://github.com/teyrana/openrocket into parallel_staging 2015-11-21 15:19:59 -05:00
Daniel_M_Williams
f1b89d2bb3 started fleshing out RailButton class 2015-11-21 15:07:17 -05:00
Daniel_M_Williams
2501bc2b8f [Bugfix] Enabled auto-positioning of parallel stages
AutoRadialOffset is a boolean flag on parallel stages
    - when enabled, the radialOffset is automatically
    - auto radius is based on the max radius of contained components
2015-11-21 10:02:16 -05:00
Daniel_M_Williams
d43381d70c [Bugfix] Fixed Initialization Positioning Bug
Positioning Behavior of RocketComponent defaulted to returning
NaN or zero during unordered initialization.

This prevented proper loading of Rocksim files.
2015-11-20 11:43:56 -05:00
Daniel_M_Williams
ec5a3119c5 [Bugfix] Fixed Core Positioning Code
- 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()
2015-11-19 17:53:28 -05:00
Daniel_M_Williams
afe56365f4 Added BarrowmanCalculator tests 2015-11-18 12:05:36 -05:00
Daniel_M_Williams
ee887cae08 [Bugfix] Tested/Fixed Mass Override Calculation Code
- MassCalculator class:
    fixed mass
    fixed CG x-value overrides
- MassCalculatorTest class:
    added tests for:
        setOverrideMass(...)
        setOverrideCGX(...)
2015-11-17 10:04:30 -05:00
Daniel_M_Williams
9d78d823b6 cleaned up extra debug statements 2015-11-15 11:23:20 -05:00
Daniel_M_Williams
4e8838aa4c Merge branch 'master' of https://github.com/openrocket/openrocket into child_staging 2015-11-14 11:23:48 -05:00
Daniel_M_Williams
4c7c3be9f7 [Bugfix] Verify / Fix Mass Calculation Code
- 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;
2015-11-14 11:19:08 -05:00
Kevin Ruland
e8167ac159 Added message properties and prefs for showing warning dialogs.
Restored auto-open last design preference.
2015-10-28 06:27:55 -05:00
Daniel_M_Williams
cac0a52990 [Bugfix] Modestly reduced extra configuration instances 2015-10-27 21:42:10 -04:00
Daniel_M_Williams
168f889446 fixed vector sort call to Java 1.7 conformant version 2015-10-27 10:24:15 -04:00
Daniel_M_Williams
5e0c866481 fixed FlightConfiguration toString method 2015-10-23 18:39:58 -04:00
Daniel_M_Williams
035427fd5b [Bugfix] Refactored FlightConfigurationID to UUID directly 2015-10-23 18:16:24 -04:00
Daniel_M_Williams
d977733cf5 [Bugfix] More Motor Ignition UI issues
- Selecting an option in the Ignition Chooser dialog updates itself
- When updating all motor ignition events, the default is also updated.
- removed isDefaultMotorInstance from MotorMounts
    - default is always the Empty Instance, which has a built in test: 'isEmpty'
- in MotorConfigurationPanel: ignition events are gray out, if they match the default ignition event
2015-10-23 17:49:38 -04:00
Daniel_M_Williams
86e8a96d06 [Bugfix] Fixed Various configuration and motor UI bugs
- The active / default configuration is stored in the Rocket's ParameterSet.
    - Any use of it should be retrieved from here.
    - Don't Repeat Yourself
- RocketPanel updates the rocket's default/active configuration, and only draws that one
- updated code for setting new Motor to a MotorInstance (in the MotorMounts)
2015-10-23 14:43:29 -04:00
Daniel_M_Williams
3ae4b0d277 [Bugfix] Fixed some FlightConfiguration-related UI elements
- Removed configuration from the document class -- please retrieve it from the rocket instead
- Refined debug code points, particularly in InnerTube
- Fixed <RocketComponent>.removeChild( component ) to function correctly
- fixed UI element: FlightConfiguration ComboBox chooser
    - Renamed FlightConfigurationSet -> ParameterSet
    - FlightConfigurationModel -> ParamaterSetModel
- fixed engine drawing (partially. Still needs Testing.
2015-10-22 20:13:36 -04:00
Daniel_M_Williams
6b322a610f Files now save boosterset compnonents 2015-10-20 17:57:09 -04:00
Daniel_M_Williams
8e78a314cd [Bugfix] Ironing out motor-instance model changes.
- renamed <RocketComponent>.getLocation() => getLocations()
    - trailing 's' matches return type
- made <RocketComponent>.shiftCoordinates protected (from public)
    => references converted to <>.getLocation() calls
- Reduced functions in "Instanceable" interface.
- Fixed Motor Instancing Code
- Removed 'isCenterline()' tester method
- added 'isAfter()' tester method
- OutsideComponent interface removed.
    => was redundant with RingInstanceable.
2015-10-20 17:22:55 -04:00
Daniel_M_Williams
3491139750 added 9-grid and 9-star motor cluster configurations 2015-10-19 16:45:41 -04:00
Daniel_M_Williams
35b46ca44f [Bugfix] Display now updates with editing changes. 2015-10-19 11:26:11 -04:00
Daniel_M_Williams
dac67b0f71 [Bugfix] Fixed UI issues related to 'Instanceable' implementation.
- RingComponent is no longer Instanceable.
- Fixed setter settings for file loading:
    - Fixed methods references for Innstanceable-implementing classes
        - BoosterSet
        - PodSet
        - InnerTube
        - CenteringRing
        - LaunchButton
        - LaunchLug
2015-10-16 19:56:02 -04:00
Daniel_M_Williams
80c4ef5254 [Bugfix] Fixed UI issues related to 'Instanceable' implementation.
- Added set/get InstanceCount methods to BoosterSet, PodSets.
- changed order of editing tabs for BoosterSets, PodSets.
- When editing MotorMounts, fixed an incorrect model reference.
2015-10-16 19:05:32 -04:00
Daniel_M_Williams
1719351a63 [Bugfix] .ORK I/O Bugfixes...
- Corrected FlightConfiguration, MotorConfiguration ID issues
  - output code no longer outputs extra FlightConfigurations
  - recovery Devices no longer print out FlightConfigurations w/o specific settings
- Reverted Default Value for FlightConfigurationSet is just a member field
    - creates extraneous code when included in the map.
    - fixed corresponding display issues.
2015-10-16 18:11:27 -04:00
Daniel_M_Williams
9551ddc0cb [Bugfix] Bugfixes: Ability to Rename, Delete FlightConfigurations. 2015-10-15 12:21:43 -04:00
Daniel_M_Williams
55acf6cebf [Bugfix] Fixing Configuration Editing UI
- Default Parameter in FlightConfigurationSet<T> is now totally separate from those listed in the map.
    - note: the default option =/= the option for the default FlightConfiguration ...
    - defaultValue is now included in the map, with a dedicated static final key.
    - defaultValue may only be replaced, not removed.
- "Select Ignition" button now functions correctly
- "Reset Ignition" button functions correctly
2015-10-15 11:33:33 -04:00
Daniel_M_Williams
b3c1c5fac1 [Bugfix] Cleaning up FlightConfigurationID handling. Multiple Fixes.
-Fixed Motor Choosing UI Function
-Fixed Motor Remove UI Function
-Fixed UI display bug:  pass FlightConfigIDs instead of naked Strings.
-FlightConfigurationIDs now filter out keytext only. (spurious "key: " appended)
-Fixed extra de-select when navigating MotorSelection / FlightConfig selection tables
    - code no longer sets selected cell / config as the default item
2015-10-12 12:20:45 -04:00
Daniel_M_Williams
059c9cf0db [bugfix] Flight Configuration management bugs fixed
Removed "Rename Configuration" Button => "Reset to Default" (is now obsolete)
Re-implemented 'create new configuration' button
2015-10-09 17:56:30 -04:00
Harry Dalton
39ec03370d Adding missing Spanish translation`
(thanks to Carlos)
2015-10-08 12:14:12 +01:00
Daniel_M_Williams
0a55f59548 [Minor] Harmonized interface for instanceable components
Implemented 'Instanceable' Interface
    - MotorMount implements instanceable
        - BodyTube
        - Innertube
    -RingInstance interface
        - BoosterSet
        - PodSet
    -LineInstanceable interface [This feature is not exposed in UI)
        - LaunchLug
        - LaunchButton (Stub only, ATT)
        - RingComponent (abstract ancestor class)
-Reverted MotorMount Function names to "[is|set]MotorMount"
2015-10-06 12:02:57 -04:00