136 lines
3.5 KiB
Plaintext
136 lines
3.5 KiB
Plaintext
|
|
Feature roadmap for OpenRocket 2.0
|
|
----------------------------------
|
|
|
|
Must have:
|
|
|
|
- Logging system into use
|
|
- Reduce memory footprint
|
|
- Reduce memory leakage
|
|
|
|
|
|
Maybe:
|
|
|
|
- Water rocket modeling
|
|
|
|
|
|
Done:
|
|
|
|
In 1.1.0:
|
|
- Reading .RKT
|
|
- Central logging system
|
|
- Simulation refactoring
|
|
In 1.1.1:
|
|
- Load thrust curves from external directory
|
|
- Support duplicate motor definitions
|
|
- Combine duplicates into one display in the selection dialog
|
|
- A single manufacturer/designation can contain multiple thrust curves
|
|
- Delays are combined
|
|
- Type is selected based on any not-unknown type
|
|
- Hybrid type always includes P delay
|
|
- Default delay selected based on heuristics
|
|
- Store recently used motors, use in default selection
|
|
- Plot motor thrust curve
|
|
- Change databases and icon loading to bean instances, implement stubs
|
|
for unit tests
|
|
- Remove database etc. initialization from class initialization,
|
|
create separate set of test motors
|
|
|
|
|
|
|
|
More ideas:
|
|
-----------
|
|
|
|
|
|
Memory usage:
|
|
|
|
- Store data as floats instead of doubles
|
|
- Reduce memory leakage when closing windows
|
|
- Make simulation data immutable, don't store copies in undo/redo
|
|
- Profile memory usage during operation (send data to server?)
|
|
- Warn user when 90% of memory is used, offer to send info to server
|
|
|
|
|
|
Motor support:
|
|
|
|
- Integration with thrustcurve.org (syncing?)
|
|
- Water rocket modeling
|
|
|
|
|
|
Optimization:
|
|
|
|
- Automatic general rocket optimizer (for altitude, velocity, duration etc)
|
|
that allows changing any rocket parameters for optimization
|
|
- Analysis of various motors for the rocket. Search all motors by
|
|
diameter, impulse range, manufacturer, simulate them and present the
|
|
results.
|
|
|
|
|
|
Running:
|
|
|
|
- Windows executable wrapper (launch4j?)
|
|
- Allow only one instance of OpenRocket running (RMI communication?)
|
|
- Running/simulating from command line
|
|
|
|
|
|
UI issues:
|
|
|
|
- Easy/intuitive zooming of plots
|
|
- Open recent designs
|
|
- Only schedule rocket figure update instead of each time updating it
|
|
- Importing flight data (file/altimeter)
|
|
- Saving as SVG
|
|
- Implement setDefaults() method for RocketComponent
|
|
- BUG: Inner tube cluster rotation, edit with spinner arrows, slider wrong
|
|
- NAR/CNES/etc competition validity checking
|
|
- Print support
|
|
- Drag and drop of components / other table items
|
|
- Ctrl+scroll wheel to zoom in/out
|
|
- Move components by dragging on the figure
|
|
- Add tool tips to component tree and figure, display component comment
|
|
- Make simulation table columns configurable
|
|
|
|
|
|
Simulation:
|
|
|
|
- Landing scatter plots
|
|
- Simulate other branches
|
|
- Remove need for 5m launch rod in real-time simulations (reduces apogee)
|
|
A simulation listener that checks when sufficient velocity has been reached?
|
|
- [BUG] Take single-fin cant yaw effect into account
|
|
|
|
|
|
Structural analysis:
|
|
|
|
- Run a simulation with each step doing a component analysis
|
|
- Compute the force between different components:
|
|
- between body components (pushing against and pulling apart)
|
|
- inner tubes and the parent body tubes
|
|
- lateral forces on fins
|
|
- individual fin normal forces?
|
|
- Take into account acceleration, drag, gravity
|
|
- Plot forces against time
|
|
|
|
|
|
Component support:
|
|
|
|
- Screw weights for nose cones / transitions
|
|
- Support for external pods
|
|
- Support for tube fins
|
|
- Allow ejecting mass components (or all components?) at specific flight events
|
|
|
|
|
|
File support:
|
|
|
|
- Reading (and writing?) SpaceCad format
|
|
- Writing .RKT format ?
|
|
|
|
|
|
Refactoring tasks:
|
|
|
|
- Extract event rules and data saving from Simulator into listeners?
|
|
- Change SimulationStatus to include methods for obtaining basic
|
|
position (maybe even change to an interface, implements Cloneable)
|
|
|
|
|