UI's are extremely difficult.
My idea of a good UI for this:
1. Shared launch conditions between all simulations. Temperature, altitude, launch rod length, etc., would be selected at the top of the window. Overrides (via a dialogue box as is currently done) would be possible for individual simulations.
2. Motor configurations would automatically create simulations: as you add the motor configuration the simulation appears on the list. I don't see any reason to have a motor configuration that is not simulated, and it's irritating to have to add it in two places.
3. If you want to do override parameters, you would be able to duplicate the simulation/motor configuration and then override the parameters.
4. I want multiple rocket configurations. You should be able to initialize a second configuration, which would start out identical to the previously-selected configuration. You could change which one is active via drop-down box (possibly where the current motor configurations are located) (and this would be selectable in the simulation tab on a simulation-by-simulation basis). When editing a feature of the rocket, there would be two 'apply' boxes: one to apply to all (or some) configurations, and one to only the current configuration.
This would be implemented by adding a two tags to each part in the file structure: an ID and a configuration tag. If the configuration tag is 0, it applies to all configurations. If it's non-zero, then it applies to that configuration only. When parsing the file tree, it would pick out only parts labeled either 0 or the current configuration, and ignore anything else. Obviously if there is something shared by all but one configuration, the part with the non-zero configuration tag gets priority.
For saving: If you make a part vary between configurations, then it would have two identical ID tags and differing configuration tags. To apply a change to all configurations (or selected ones), it just deletes any other items with the same ID tag (except those with un-selected configuration tags) and sets the new one's configuration tag to 0 so it'll be accessed by all configurations.
5. When you add a motor configuration, the simulation that would be created should be set to the current rocket configuration.
Hey CarVac,
These are great ideas. I think you'll be surprised that a couple of them will be in the next release. We have extended the "motor configuration" concept to "flight configuration". You can configure for each flight: motors, motor ignition, stage separation, and recovery deployment. All of these (except) motors can have a default defined on the rocket component itself (in the edit window), but you can override the default per configuration. We have added a copy operation which allows you to copy one configuration to a new one - with the expectation that you will modify some parameters in the new one.
There had been some discussion of making the environmental and launch condition defaults stored in preferences and used to populate the dialog; though that hasn't been implemented and doesn't really sound like what you would want. However, it would make automatically adding a simulation for each configuration much easier.
For 4, what are you considering part of the "rocket configuration"?
Kevin
Enter your email address to join: