1677 Commits

Author SHA1 Message Date
Daniel_M_Williams
73db54ae7b [fix] removes obsolete l10n string 'RocketActions.ActBoosterstage' from 'core/resources/l10n/message.properties' 2018-06-09 20:22:32 -04:00
Joe Pfeiffer
09123dd0ce Set current configuration before creating simulation
createSimulationForConfiguration() assumed addConfiguration() and
copyConfiguration() would set the new configuration as selected, but
they didn't resulting in simulation based on old configuration, not new
one.  Fixed.

addConfiguration() and copyConfiguration() had enough common code that
consolidating them and createSimulationForConfiguration() seemed like a
good idea.

Let FlightConfiguration.copy() create new ID for consistency with
constructor.
2018-06-04 12:37:40 -06:00
Joe Pfeiffer
f82fef44d7 Fix Configuration name in motor configuration panel.
Formerly just used delay value directly, resulting in huge delay for
plugged motors; now uses motor.getDesignation so it translates to "P" as
expected.

Changed name of toMotorDesription method to toMotorDesignation to match
usage of getDesignation() in ThrustCurveMotor.java

Changed toMotorDesignation to use motor.getDesignation
2018-06-01 09:27:08 -06:00
Daniel_M_Williams
b7ee926d6c [fix] change to SymmetricComponent no longer generates negative inertias 2018-05-28 12:28:59 -04:00
Daniel_M_Williams
20473dbf82 [fix] file version 108 now correctly loads angle-offsets for all ComponentAssemblies 2018-02-03 10:52:44 -05:00
Daniel_M_Williams
0ef72ec66d [Resolves #391] Localized description is displayed for relative positioning methods 2018-02-03 10:37:40 -05:00
Daniel_M_Williams
7017b0b2f0 [fix] removed Angle.Fixed and Radius.Surface positioning methods 2018-02-03 10:25:03 -05:00
Daniel_M_Williams
4a874b6ba9 [fix] Fixed OpenRocketSaverTest: minimum file version is now 108 2018-01-27 20:35:49 -05:00
Daniel_M_Williams
9398331f02 [fix][file] OR now always saves files as format version 1.8 2018-01-21 12:16:21 -05:00
Daniel_M_Williams
85fc41d203 [feature][refactor] Implemented Relative Positioning for Axial, Angular, and Radius directions
- Allows more precise and flexible control of component positions
- file format:
  -- maintains compatability with previous major release (15.04)
  -- may not accept file formats from unstable development branches in-between major releases
2018-01-21 12:06:42 -05:00
Daniel_M_Williams
0498900078 [feat] Added Positioning methods and interfaces for Axial, Radius, and Angle directions
- also added minor angle-wrapping function to MathUtil
2018-01-21 12:06:25 -05:00
Daniel_M_Williams
5c96ad9454 [ver] Bumped version number for Alpha Release 5 2018-01-21 12:05:59 -05:00
Daniel_M_Williams
bf41c07f76 [version] version bump to rc4 2018-01-13 20:47:04 -05:00
Daniel_M_Williams
d955f59a75 [fix] removed spurious unittest import 2018-01-13 20:46:14 -05:00
Daniel_M_Williams
23d7397fa6 [refactor] Pods and ParallelStages are now attached to BodyTubes *only* 2018-01-13 14:35:16 -05:00
Daniel_M_Williams
20eff575f4 [fix] Fix MassCalculator Unittests.
(Effectively a re-write of the MassCalculation code)
- renamed some mass calculator accesor methods
- MassData, InertiaMatrix refactored into 'RigidBody' class

- refactors out cache code to separate wrapper class
- calculations now use the Transform class to translate masses, CM, and MOI

- new class: MassCalculation
  - contains relevant context for a given calculation: tree-root, type, time, config
  - contains most actual calculation code
  - calculations are tracked with a context class: MassCalculation
2017-12-25 20:56:11 -05:00
Daniel_M_Williams
6289aef0ef [fix] Fixed aerodynamic unittests
-changed FinSetCalc to output per-instance CNa
2017-12-25 20:56:11 -05:00
Daniel_M_Williams
1fac8818b5 [fix][test] Fixed filename sanitation issue in OpenRocketSaverTest 2017-12-25 20:56:11 -05:00
Daniel_M_Williams
b84de68575 [fix][test] Fixed RocketTest, FlightConfigurationTest 2017-12-25 20:56:11 -05:00
Daniel_M_Williams
356ec09094 [fix][unittest] Fixed RocketTest (required fix to RocketComponent#getInstanceLocations()) 2017-12-25 20:56:11 -05:00
Daniel_M_Williams
bb756decfc [doc] Bump version number to 18.01-rc3 2017-12-25 20:56:11 -05:00
Daniel_M_Williams
23a488db48 [Resolves #369] Fixes 3d rendering for instanced components
This is a relatively major refactor / rewrite of the 3d rendering code.

- components geometries are rendered recursively
- components inherit parents' transformations ( translation, rotation)
- implemented Transformation#toGLMatrix()
  -- openrocket transformations can be directly fed into Java OpenGL

- added: FinSet#getBoundingBox()
- improved documentation on RocketComponent Location methods

- Refactor RocketRenderer:
  - render component trees recursively
  - removed RocketRendere#isDrawn(c) -- return true in all implementations

- Refactor ComponentRenderer
  - renamed variables to be more descriptive
  - changed RocketComponent#toAbsolute(...) => RocketComponent#getComponentLocations()
- Adjust FinRender Code:
  - Render Single Fin Instance at-a-time
  - takes in an angle for the instance
  - assumes the fin is already at it's desired position.
  - renames 'fs' -> 'finSet'
2017-11-05 17:56:14 -05:00
Daniel_M_Williams
9456c3a14a [fix][test] Expanded Transformation unit tests 2017-11-05 11:11:16 -05:00
Daniel_M_Williams
cfc1715cf4 [fix] Added details toggle to DebugLogDialog 2017-11-05 11:06:11 -05:00
Daniel_M_Williams
42270276d5 [doc] Version bump to 17.11-rc2 2017-11-05 11:06:11 -05:00
Daniel_M_Williams
8f43199d39 [fix][test] Change 'clusterable' to 'instanceable' in debug method 2017-10-29 12:38:06 -04:00
Daniel_M_Williams
0a85188c12 [fix][ork][load] Bulkheads may now load instanced components
- moved 'instancecount' and 'instanceseparation' loading from CenteringRing to RadiusRingComponent
  - enables both Bulkhead and CenteringRing to load those tags from .ork file
2017-10-28 13:42:10 -04:00
Daniel_M_Williams
279bb59f30 [fix][masscalc] Validation Rockets correctly calculate mass
- Adjusted masscalculater code to not double-count instances (when mass > 0, and instance > 1 )
- RingComponents now correctly calculate their mass again
2017-10-28 13:42:10 -04:00
Daniel_M_Williams
9176e9fa61 [resolves #374] centering rings, bulkheads now display correctly 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
bd42c7ecde [doc][version] bumped version number to 18.10-rc1 2017-10-28 13:42:10 -04:00
Daniel_M_Williams
212685b026 [resolves #328][save][load] Fixed invalid save & load fields for 'FinSet', 'LineInstanceable' Components
- PodSet may save/load auto-radial-offset
- Fins now save/load
  - 'instancecount'
  - 'angularoffset'
  - 'radialoffset' = 'auto'

- RadiusPositionable interface now enforces 'setAutoRadialOffset(...)'
- implemented RockeComponentSaver#emitInteger
- all LineInstanceable implementers read/write 'instanceseparation'
- [fix] RocketComponentSaver now saves 'instancecount' even if 1==instancecount
2017-10-28 13:41:51 -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
f469ee9586 [refactor] added getInstanceAngle(int) function to the RingInstanceable class (and implementations) 2017-10-28 12:56:55 -04:00
Daniel_M_Williams
8e8ba9324f [rename] renamed count -> instanceCount to be more descriptive 2017-10-28 12:56:55 -04:00
Alexander Allen
107d987973 Implemented CD Override 2017-09-20 21:45:26 -04:00
Daniel_M_Williams
aa5545a973 [fix] both pods and boosters now obey the 'auto-radius' option
- update ParallelStage#update to use the parent-class
  which contains 'getOuterRadius'
2017-09-02 11:09:37 -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
64be463b48 [feat] added getter/setter for 'AutoRadialOffset' to PodSet 2017-09-02 11:09:37 -04:00
Daniel_M_Williams
95a927b3b7 [fix] simulations now correctly count motors on boosters and pods
- thrust now counts motors on InnerTubes AND BodyTubes.
2017-09-02 11:07:41 -04:00
Daniel_M_Williams
76d4136011 [nonfunc] fix typo in function name 2017-09-02 11:07:41 -04:00
Daniel_M_Williams
15bc607acc [fix] fixed deprecated method (reflection) references. 2017-09-02 10:59:17 -04:00
Daniel_M_Williams
ce65463996 [fix] added several config changes to travis config 2017-08-20 20:21:28 -04:00
ChrisMickelson
3997d08a45 update splashscreen 2017-06-05 01:40:42 -04:00
ChrisMickelson
357eb53ce9 update splashscreen 2017-06-05 01:39:33 -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
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
kruland2607
2403dcd62b Merge pull request #293 from teyrana/rocket-assembly
[Refactor] Rocket now subclasses ComponentAssembly
2017-02-01 23:44:39 -06:00