494 Commits

Author SHA1 Message Date
Daniel_M_Williams
04b4a45b2e fixed NPE-throwing Heisenbug in flight confiuration UI 2016-01-02 15:04:41 -05:00
Daniel_M_Williams
513e74fd15 Merge with commit f8cfebe from kruland2607/openrocket 2016-01-01 16:04:33 -05:00
Kevin Ruland
f8cfebe5f5 Fix the motor cg computation. Partial fix to barrowman aero. 2015-12-31 09:57:36 -06:00
Daniel_M_Williams
ab643d5ab5 [Major] Removed Rocket FlightConfiguration event code
# FlightConfigurations have stubs of eventListening and dispatching code.
  - Removed code from FlightConfigurations
  - Removed code from calling classes
2015-12-23 23:25:03 -05:00
Daniel_M_Williams
0979cff505 fixed bugs in the Photo Renderer 2015-12-23 23:17:59 -05:00
Daniel_M_Williams
efd1656fc8 [Major] Re-Implemented Rocket configuration list
# FlightConfigurations behave differently than the ...ParameterSet instance
  - Rockets no longer have a defaultConfig, but have a selectedConfiguration
  - therefore these function were completely re-implemented native to the Rocket class
  - FlightConfigurationTest verifies this functionality
  - simplified several function calls through the code base
  - added convenience methods for getting the config[] to the UI
# expanded RocketTest to verify Rocket.copyWithOriginalID():
  - rocket is cloned, so non-trivial members must be cloned as well.
2015-12-23 22:32:52 -05:00
Daniel_M_Williams
f59ebdd06e [Major] Re-Implemented ..ParameterSet to represent the default more simply
- the default value is now simply an entry in the map
  - size() returns only the number of overrides
  - getIds() returns only the ids of overrides
- added ParemeterSetTest to test FlightConfigurableParameterSet
- removed (already defanged) event handling functions from MotorConfig
- removed (already defanged) event handling functions from DeploymentConfig
- removed (already defanged) event handling functions from IgnitionConfig
- FlightConfigurableParameter no longer extends ChangeSet
- fully parameterized DoubleModel to <T extends Enum<T> >
- fully parameterized EnumModel to <T extends Enum<T> >
2015-12-23 00:21:09 -05:00
Daniel_M_Williams
bc906c6652 [Bugfix] moved ConfigurationTest to FlightConfigurationTest
- in FlightConfiguration:
  -- adjusted functions to consistently refer to <x>ActiveMotors()
  -- corresponding functions now act the same way
- removed '.release()' calls from FlightConfiguration
2015-12-20 22:21:33 -05:00
Daniel_M_Williams
3f4cf696c1 [Bugfix] Test Patch which replaces event-passing in FlightConfiguration with a simple 'update()'
- listener lists removed from FlightConfiguration
- listener lists removed from MotorConfiguration
- added update() calles to Rocket FlightConfigurationSet, other configs
- merged FlightConfigurable into FlightConfigurableParameterSet
- Fixed ParallelStageTest
- updated some function calls in/to FlightConfiguration
2015-12-20 21:47:13 -05:00
Daniel_M_Williams
b6c30a59ba fixed extra capitalization of FlightConfigurationId 2015-12-16 20:19:32 -05:00
Kevin Ruland
66f1e0b901 Rename some classes for clarity. 2015-12-14 22:46:36 -06:00
Kevin Ruland
88f84396d0 Initial refactoring of MotorInstance and ThrustCurveMotorInstance 2015-12-14 18:41:02 -06:00
Kevin Ruland
4c56c53135 Added CaseInfo enum and compatible case information to
MotorInformationPanl.
2015-12-13 10:58:47 -06:00
Daniel_M_Williams
6af57134aa [Bugfix] Removed "Automatic" ignition Option
Removed Automatic ignition Option
    - "bottom" core stage is ill-defined in current configuration
    - 'automatic' values in files get loaded as 'launch'
Fixed file values for loading Pods
2015-12-13 11:08:32 -05:00
Daniel_M_Williams
ec05e46a0e [Bugfix] Fixed Stage Separation Bugs
UI elements now change per-configuration separations not the defaults
   fixed separation configuration file-write code.
Added max-time guard for simulations at 1200 seconds.
2015-12-12 19:38:38 -05:00
Daniel_M_Williams
238726f371 Merge branch 'master' of https://github.com/openrocket/openrocket into parallel_staging
Conflicts:
	swing/src/net/sf/openrocket/gui/main/BasicFrame.java (resolved)
2015-12-12 11:14:13 -05:00
Daniel_M_Williams
fc3e19fbcd [Bugfix] Fixed Display (and other) bugs
FlightConfiguration.clone() now correctly clones internal data
    -> caused mysterious disapearing-rocket-display bug
    -> added FlightConfiguration.instanceNumber for debugging
Refined stage-set-active methods to fine tune event firings
Improved output of various debug methods.
Fixed various warnings
2015-12-12 11:00:17 -05:00
Kevin Ruland
b415238a02 Changed Motor to support additional fields case info, prop info, and
availability flag provided by Thrustcurve.org.  Change serialization
process to pull current files from Thrustcurve.org using the xml api,
use the corrected data for diameter and length, and use a consistent
motor designation.  Added fields to the Motor chooser - case info is a
column in the listing (replacing MotorType), the other info is in the
motor details tab.  Added toggle to hide motors which are OOP.
2015-12-07 22:27:05 -06:00
Daniel_M_Williams
1988ee4266 [Bugfix] Fixed Simulations bugs - Sim should be operational now.
Motors are now cloned for each new simulation (including background and foreground runs)
    -> motors are now cloned within the configuration clone method.
    -> MotorInstance.reset() resets instance to launch state
Removed spurious negative time-step check in ThrustCurveMotorInstance:154
    -> was triggered during normal simulation operations.
Added MotorInstance time updates to AbstractSimulationStepper:
    -> moved from MotorInstanceConfiguration.step(...)
Misc variable name changes to be more descriptive
2015-12-06 12:09:29 -05:00
Daniel_M_Williams
729effd690 [Bugfix] Merged FlightConfiguration MotorInstanceConfiguration
fixed ignition configuration load / save
2015-12-03 21:44:34 -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
c826062be3 [Minor] Tweaked DebugLogDialog to maximize its real estate. 2015-11-29 18:36:42 -05:00
Daniel_M_Williams
698c722c33 added shortcut key for log window: <mod> + D 2015-11-29 18:00:51 -05:00
Daniel_M_Williams
b1108a0c83 [bugfix] refixed motor loading code. 2015-11-29 17:42:14 -05:00
Daniel_M_Williams
a43fbe79bc [bugfix] 'remove motor' button now works correctly 2015-11-26 09:05:08 -05:00
Daniel_M_Williams
12cda5b722 small internal API refinements 2015-11-25 18:02:25 -05:00
Daniel_M_Williams
08077392bd added rotation of the railbutton in 3D viewing. 2015-11-24 18:55:07 -05:00
bkuker
2d465a3576 Simple rail button render 2015-11-24 13:13:17 -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
e3250c9a91 added exploratory code for non-axisymmetric CPs 2015-11-22 10:12:30 -05:00
Kevin Ruland
0caaf04e06 File Chooser object for save as. 2015-11-22 06:22:12 -06: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
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
afe56365f4 Added BarrowmanCalculator tests 2015-11-18 12:05:36 -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
c7c250ba8d [Bugfix] Changed Behavior In motor choosing dialog
-When checking: "Limit motor length to mount length"
    -prevents other sliders from modifying value
2015-10-27 12:15:33 -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
64417ca93c [minor] Fixed length filter options in Motor Dialog 2015-10-23 16:21:54 -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
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
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
a7b4386358 [minor] removed spurious System.err.println() calls 2015-10-16 18:27:21 -04:00