653 Commits

Author SHA1 Message Date
Daniel_M_Williams
cfc1715cf4 [fix] Added details toggle to DebugLogDialog 2017-11-05 11:06:11 -05:00
Daniel_M_Williams
886faae76b [fix] removed debugging println 2017-10-29 13:07:04 -04:00
Daniel_M_Williams
015437d335 [resolves #368][resolves #331] User may scale freeform fins. 2017-10-28 13:42:10 -04:00
Daniel_M_Williams
9c93ada83f [resolves #371] MassCalculator now updates result on FlightConfiguration change
- added check in MassCalculator against last-used FlightConfiguration
- removed dead code
2017-10-28 13:42:10 -04:00
Daniel_M_Williams
4ce1e8ef0d [resolves #367] Can no longer add Components to rocket directly (add buttons are greyed-out) 2017-10-28 13:42:09 -04:00
Daniel_M_Williams
eb72329c58 [fix][refactor] simplified rocketfigure drawing code
Fixes Issues:
- https://github.com/openrocket/openrocket/issues/366
- https://github.com/openrocket/openrocket/issues/323

- RocketFigure no longer draws specific stages:
  Starts drawing rocket, and then propogates location, angle/transformation downwards
  - fixed active/inactive visibility toggling
  - Fixed Drowing Bounds for RocketFigure
    - Fix: FlightConfiguration#getBounds()
    - Fix: FinSet#getComponentBounds()
    - Fix: InnerTube#getInstanceCount()
    - Add: Coordinate#MIN, Coordinate#MAX
    - Add: net.sf.openrocket.util.BoundingBox

- RocketComponent:
  - implement: #getInstanceLocations() // relative to parent component
  - implement #getInstanceAngles()
  - implement: #getComponentLocations()  (Refactor/rename of #getLocations() )

- Implement <x>#getInstanceOffsets() // relative to component-reference-point
  - FinSet
  - PodSet
  - ParallelStage
  - RailButton
  - InnerTube:

- fixed drawing shapes:
  - TubeShapes
  - BodyTube
  - Launch Lug
  - RingComponent (InnerTube, EngineBlock, Coupler)
  - Finset
  - Transition
  - Rail Button
2017-10-28 13:41:51 -04:00
Daniel_M_Williams
c36ce2eae4 [resolves #323] Major patch to improve rendering of instanced+rotated components
- introduced interfaces for different types of positionable components:
  -- AnglePositionable
  -- AxialPositionable
  -- RadiusPositionable
- RingInstanceable now includes these other interfaces, making explicit the expectations of
   any implementing subclass.
- RingInstanceable now indicates its angles as an array instead of returning angles one-at-a-time
  -- commit includes updates to match this new API
- Added getAssembly() method to RocketComponent, to simplify instancing code
2017-10-28 13:41:25 -04:00
Daniel_M_Williams
c437b7870a [fix] parallel-stage / pod config tab no longer throws for axial stages 2017-09-23 11:20:00 -04:00
Alexander Allen
107d987973 Implemented CD Override 2017-09-20 21:45:26 -04:00
Daniel_M_Williams
f1c9ebb25f [refactor] Merged configuration tabs for boosters and pods into the 'ComponentAssemblyConfig' class 2017-09-02 11:09:37 -04:00
Daniel_M_Williams
15bc607acc [fix] fixed deprecated method (reflection) references. 2017-09-02 10:59:17 -04:00
ChrisMickelson
bd8f246a63 Update RealisticRenderer.java 2017-06-05 00:17:53 -04:00
kruland2607
a59aadbf04 Merge pull request #321 from ChrisMickelson/unstable
Alpha value for semi-transparent components saved/loaded and small bug fix
2017-02-01 23:46:02 -06:00
kruland2607
eb2d569b5f Merge pull request #318 from dkingsley/SimResultsCopyToClipboard
Copy Simulation Results to Clipboard
2017-02-01 23:45:52 -06:00
kruland2607
6ca4085349 Merge pull request #317 from dkingsley/ExportFinGeometry
Export Free Form Fin Profile to CSV File
2017-02-01 23:45:42 -06:00
kruland2607
c8eaca6cb0 Merge pull request #315 from teyrana/fix-cg
[Fix][Issue #295] CG now correctly updates when Stages are toggled
2017-02-01 23:45:03 -06:00
kruland2607
33aeb25d84 Merge pull request #301 from Vicilu/unstable
adds more documentation
2017-02-01 23:44:51 -06:00
ChrisMickelson
e0f5d7711b Update RealisticRenderer.java
Small bug fix to keep Unfinished renderer showing interior of tubes
2017-02-01 22:00:15 -05:00
dkingsley
0c9fdb38b2 Export Free Form Fin Profile to CSV File
Add code to export the free form fin profile shape as a CSV file.
2017-02-01 14:30:43 -05:00
dkingsley
fafdc81c40 Copy Simulation Results to Clipboard
Implement code to copy the simulation results to the system clipboard.
2017-02-01 14:15:53 -05:00
Daniel_M_Williams
c44f976a62 [Fix][Issue #295] Toggling (in)active stages will now trigger a change to the CG
- stage toggling was sending the wrong event type: updated to AERO | MASS | MOTOR change event.
2016-12-23 18:44:20 -05:00
kruland2607
597d6c8391 Merge pull request #290 from teyrana/warning-cleanup
Warning cleanup ( reduced from 219 to 185 )
2016-11-19 08:31:11 -06:00
Matt Kendall
af18606eb9 Remove calls to model.setCurrentUnit in Booster and Pod configs which are changing the default units of some fields in the config panels 2016-11-05 17:50:02 +00:00
Daniel_M_Williams
8c8e8b1305 [fix] Rocket Figure now redraws when motors are added & removed 2016-10-29 12:27:15 -04:00
Kevin Ruland
a082e8a24b Resave the Pods Example to get rid of older attribute. 2016-10-26 19:46:00 -05:00
Kevin Ruland
f390d1f305 Fix PodSet Rendering. 2016-10-26 19:42:16 -05:00
Kevin Ruland
10bd864ef6 Fix 3d rendering issues with AxialStage and ParallelStage. Renamed
example to get rid of underscores.
2016-10-26 18:39:10 -05:00
Luiz Victor Linhares Rocha
3fc4c3799c adds documentation for database package 2016-10-24 14:48:05 -02:00
Kevin Ruland
f2d76e3b2b Merge remote-tracking branch 'upstream/master' into unstable 2016-10-23 13:50:08 -05:00
Kevin Ruland
d3240ec1a4 Merge remote-tracking branch 'upstream/unstable' into unstable 2016-10-23 13:16:06 -05:00
Daniel_M_Williams
93ccc180b8 [Cleanup][Warnings][Non-Func] Fixes numerous but trivial warnings
Warnings fixed:
-"JComboBox is a raw type. References to generic type JComboBox<E> should be parameterized"
-- fix: Add a <T> type specifier to each generic, (or occasionally <?>)

- "The serializable class WarningDialog does not declare a static final serialVersionUID field of type long"
-- fix: add annotation: '@SuppressWarnings("serial")'

- "Unnecessary @SuppressWarnings("unchecked")"
-- fix: remove annotation
2016-10-13 15:54:26 -04:00
Kevin Ruland
6532743c3f Revising previous commit to include the missing files. 2016-10-10 19:50:17 -05:00
Kevin Ruland
f121def910 Significantly modified management of motor information provided by
OpenRocket.  At build time, it will utilize the Thrustcurve.org xml api
to download the current information (curve files and supplemental
information).  OpenRocket uses the supplemental information to populate
case-info, propellant type, availability as well as correct diameters
and length. Modified motor search dialog to hide unavailable motors and
show case-info.
2016-10-10 17:27:25 -05:00
Daniel_M_Williams
c1e2ed0c28 [Refactor] Replaced redundant method: 'PositionValue(...)' with 'AxialOffset(...)'
- These two methods did the same thing, so this patch removes the former from RocketComponent and descendants
- Wherever used, "PositionValue(...)" was replace with "AxialOffset(...)"
- Removed some extraneous redirect definitions of PositionValue(...)
- Fixed some UI references to the old method
2016-09-28 10:05:35 -04:00
Daniel_M_Williams
04c0914d0a [bugfix] Overhauled MassCalculator Methods.
- Rocket total mass is split into 'dryMass' and 'propellantMass'
    -- each mass type has a corresponding calculation method in MassCalculator
  - Calculating Inertias and Center-of-Mass FOR MOTORS assume:
    - time-invariant x-coordinate
    - time-decreasing density
  - mass correctly tracks propellant usage, as measured by thrustCurves
  - elimated MassCalcType enum: was not actually solving a problem.
     - simply use motorTime: 0 for launch Double.MAX_VALUE for burnout
     - NO_MOTORS is represented by a configuration without attached motors
       -- try:  "rocket.setSelectedConfiguration( rocket.getEmptyConfiguration())"
     - 'dry mass' vs 'total mass': 90% of the time, a caller wanted 'total mass'
     - total_mass = dry_mass + propellant_mass
     - mass @ simulation time wasn't represented by the enum, had existing overloads anyway
  - get vs calculate methods:
    -- gets revalidate the cache, then retreive specific information
    -- calculate simple calculate the desired information, and ignore the cache.
       --- I'm particularly confident about cache reliability:
           particularly as it doesn't account for changing time during simulation.
  - reduced / simplified debugging messages
2016-07-01 16:26:02 -04:00
Daniel_M_Williams
7b2e195392 [Cleanup] Cleaned up the ThrustCurveMotor class Interface
- Cleaned up the ThrustCurveMotor api interface
  -- Converted 'getTimePoints().length' -> 'getSampleSize()'
  -- Unified ThrustCurveMotor gets to the form getXXXX(double motorTime)
  -- Restricted access for several methods from public -> protected
- Updated ThrustCurveMotorTest.java
2016-06-25 11:09:45 -04:00
ChrisMickelson
c0597e71a2 Add transparent render capability to RealisticRenderer.java
Current limitations: Alpha value does not seem to be saved in .ork file, Depends on color chooser having alpha capability. Does not show up as transparent in "3D Unfinished"
2016-06-09 13:45:20 -04:00
Daniel_M_Williams
5f9eb87fde [Bugfix] resolved classpath errors in Eclipse 2016-04-24 14:04:20 -04:00
Daniel_M_Williams
a94e14c2a6 [Bugfix] Main Window Config chooser now updates for new Configurations
-
2016-04-24 14:04:20 -04:00
Daniel_M_Williams
915d401370 [Bugfix] Configuration Selection ComboBox now correctly updates
- adjusted some type cast warnings
- Added 'ignore if new==current' paths in rocket configuration functions
  -- These if paths break potential infinite loops
- added update code for the main-window selected configuration dropdown
  -- now updates when the currently-selected configuration is removed.
2016-04-24 14:04:20 -04:00
Daniel_M_Williams
3362c03279 [bugfix] Fixed several FlightConfiguration bugs
- adjusted some class member names to be more descriptive
- When a component lacks an entry for the currently selected FC
  -- Code would sometimes fail to create a new motor entry
- removing a flight configuration from a rocket
  -- removes all component configurations tied to that configuration Id
2016-04-24 14:04:20 -04:00
Daniel_M_Williams
b02e164bce [bugfix] RocketPanel configuration list now updates changes
- Pulled JComboBoxModel<FlightConfiguration> into its own class: ConfigurationModel
  -- removed Rocket.toConfigArray() --> getFlightConfigurationByIndex(int,bool)
-Refactored document.getDefaultConfiguration -> getSelected...
  -- because that's what it does. Default is a different thing.
-minor: minor spelling errors and unused fields/functions
2016-04-24 14:04:15 -04:00
Daniel_M_Williams
fedda3278e [Refine] Refining the FlightConfiguration UI behavior
- the selected configuration in a rocket is now specified by id instead of instance
- tighted up Configuration UI behavior - operations should now start from selected configuration row
2016-04-24 14:03:48 -04:00
Daniel_M_Williams
345d5952c6 [Refine] Copying a FlightConfiguration in the UI now updates correctly.
- involved adjusting clone() -> copy(...) in FlightConfigurableParameters
2016-04-24 14:03:48 -04:00
Daniel_M_Williams
d7faf0d273 [Refine] Refining Configuration Fixes
- Rocket.getSelectedConfiguration will now create a new
  configuration if only the default config exists
  -- added additional unit tests for this behavior in: FLightConfigurationTest
- added test for saving ver 1.08 files to OpenRocketSaverTest
- Converted : "private static final long serialVersionUID ..." declarations to:
  "@SuppressWarnings("serial")"
- cleaned up some other random errors:
  -- tightened excessive permission modifiers -- public ->
  -- change some methods from 'public' to '/*package-local*/'
2016-04-24 14:02:32 -04:00
Daniel_M_Williams
e36aee38d5 [Bugfix] Partial fix for Swing Tests
-Changed default Motor Ignition event to AUTOMATIC
-enabled swing-test path under intellij
-fixed some simple compile errors in swing/test ... IntegrationTest
2016-04-03 15:25:26 -04:00
Kevin Ruland
4b4a7c74fc Merge remote-tracking branch 'upstream/master' into unstable
Conflicts:
	swing/src/net/sf/openrocket/gui/figureelements/RocketInfo.java
2016-04-02 16:49:15 -05:00
kruland2607
512f572879 Merge pull request #259 from wcravens/mass-info-both-with-and-without-motor
Mass info both with and without motor - Includes IntelliJ CE Configuration files
2016-03-24 17:36:30 -05:00
Wes Cravens
1c4bf57a0c Fix massWithoutMotors: Put back changes lost while tinkering with IntelliJ 2016-03-23 21:34:52 -05:00
Wes Cravens
9ffcad37c8 Merge branch 'mass-info-both-with-and-without-motor' into intellij-ce-settings 2016-03-23 21:26:50 -05:00