Commit Graph
199 Commits
Author SHA1 Message Date
fjc40 1bd9fdd931 Merge remote-tracking branch 'origin/sprint4_master' into story36_boundary_fix_attempt_2
# Conflicts:
#	mock/src/main/java/seng302/Model/Race.java
Resolved.

Also reverted the change to the prestart and preparatory time, as they had gotten flipped around (prestart is > 3min to start, preparatory is < 1 min to start).
2017-05-25 14:04:06 +12:00
fjc40 f71e175f80 Mock.Race:
The race start time was current + prestart period + 1 second.
It is now current + prestart + 1 minute.
2017-05-25 13:53:27 +12:00
cbt24 495547161d Merge branch '33CherryPick' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into 33CherryPick 2017-05-25 13:36:34 +12:00
cbt24 2126c44db9 Last minute changes to get ready for DoD
#story[875]
2017-05-25 13:35:40 +12:00
Erika Savell 0c235b0c02 Switched constant back to 3
#sotry[875]
2017-05-25 12:56:25 +12:00
cbt24 b58c3b98ed Integrated changes from story33-estimateTime branch
- Used refactored bearing methods
- Sent accurate current time to visualiser

#story[875]
2017-05-25 12:53:40 +12:00
fjc40 8273cd5167 Merge branch 'sprint4_master' into story36_boundary_fix_attempt_2 2017-05-25 12:49:18 +12:00
fjc40 5d8380be8d Mock.Race:
Boats now tack only every 15 seconds (see tackPeriod variable).
Also doesn't attempt to calculate VMG (expensive operation) if it won't be used.
2017-05-25 12:35:57 +12:00
Fan-Wu Yang ba5e74ab9c Merge with master complete
- merged with master
#story[877]
2017-05-24 23:13:59 +12:00
Fan-Wu Yang a3ccd75f4c Merge remote-tracking branch 'origin/sprint4_master' into Story877
# Conflicts:
#	mock/src/main/java/seng302/DataInput/BoatXMLReader.java
#	mock/src/main/java/seng302/DataInput/XMLReader.java
#	mock/src/main/java/seng302/Model/Boat.java
#	mock/src/main/java/seng302/Model/CompoundMark.java
#	mock/src/main/java/seng302/Model/Leg.java
#	mock/src/main/java/seng302/Model/Mark.java
#	mock/src/main/java/seng302/Model/Marker.java
#	mock/src/main/java/seng302/Model/Race.java
#	mock/src/test/java/seng302/Model/LegTest.java
#	visualiser/src/main/java/seng302/Controllers/RaceController.java
#	visualiser/src/main/java/seng302/Mock/StreamedRace.java
#	visualiser/src/main/java/seng302/Model/ResizableRaceCanvas.java
#	visualiser/src/main/resources/scenes/race.fxml
2017-05-24 22:57:31 +12:00
Fan-Wu Yang e3c3def184 Fixed capitalisation that was pointed out by Erika in the Tests
- LegTest.java ORIGIN_Compound_MARKER is now ORIGIN_COMPOUND_MARKER
#story[877]
2017-05-24 22:29:51 +12:00
fjc40 7f3500202f Mock.Polars:
Moved some code into isBearingInsideInterval and isFlippedInterval utility functions.

Mock.Race:
Appear to have fixed the boats going out bounds issue at last, by fixing a few bugs, simplifying the code, and removing the boat turning speeds.
2017-05-24 19:20:30 +12:00
fjc40 824a5ed3a2 Merge branch 'boat_boundarty_fix' into story36
# Conflicts:
#	mock/src/main/java/seng302/Model/Race.java
Resolved.
2017-05-23 18:35:39 +12:00
David Wu 9076606030 Fixed show all annotation not toggling annotations.
-Problem found with if statement to fix annotation toggling.
-Sparkline graph x-axis also increased slightly.

#story[878]
2017-05-23 17:49:00 +12:00
hba56 2ac932b4f3 fix to keep boats in the bounds
#story[#874, 873]
2017-05-23 15:17:19 +12:00
hba56 db3f4a5b2b fix to keep boats in the bounds
#story[#874, 873]
2017-05-23 14:56:07 +12:00
hba56 6a74b5fe36 Merge remote-tracking branch 'remotes/origin/sprint4_master' into story36
# Conflicts:
#	visualiser/src/main/java/seng302/Controllers/RaceController.java
#	visualiser/src/main/java/seng302/Model/ResizableRaceCanvas.java
#story[878]
2017-05-23 13:19:48 +12:00
hba56 2a7f264444 Merge remote-tracking branch 'remotes/origin/sprint4_master' into story36
# Conflicts:
#	visualiser/src/main/java/seng302/Controllers/RaceController.java
#	visualiser/src/main/java/seng302/Model/ResizableRaceCanvas.java
#story[878]
2017-05-23 13:19:11 +12:00
hba56 7c9b9c6426 Merge commit message was wrong, i wasn't watching the start up time
-small fix to java doc
#story[878]
2017-05-22 17:56:47 +12:00
hba56 748a516d16 Boats not moving working on fix
Merge remote-tracking branch 'remotes/origin/sprint4_master' into story36

# Conflicts:
#	mock/src/main/java/seng302/DataInput/XMLReader.java
#	visualiser/src/main/java/seng302/Controllers/RaceController.java
#	visualiser/src/main/java/seng302/Mock/StreamedRace.java
#	visualiser/src/main/java/seng302/Model/ResizableRaceCanvas.java
#	visualiser/src/main/resources/scenes/race.fxml

#story[878]
2017-05-22 17:45:45 +12:00
Joseph Gardner 06359fb138 Had to changed race to fit the merge 2017-05-22 16:39:26 +12:00
Joseph Gardner 40421e5a83 Merge branch 'sprint4_master' into noDependencyArrow
# Conflicts:
#	mock/src/main/java/seng302/Model/Race.java
#	network/src/main/java/seng302/Networking/Messages/RaceStatus.java
#	visualiser/src/main/java/seng302/Controllers/RaceController.java
#	visualiser/src/main/java/seng302/Model/ResizableRaceCanvas.java
#	visualiser/src/main/resources/scenes/race.fxml
2017-05-22 15:28:53 +12:00
fjc40 c8157f3476 Merge remote-tracking branch 'origin/sprint4_master' into story31.2_alternateTack
# Conflicts:
#	visualiser/src/main/java/seng302/Mock/StreamedRace.java
#	visualiser/src/main/java/seng302/Model/ResizableRaceCanvas.java
Resolved.
2017-05-22 14:26:45 +12:00
hba56 abcaca719c Javadoc fix
#story[878]
2017-05-22 11:05:36 +12:00
Fan-Wu Yang 671d62aeb1 Added Important and Partial Annotations and other refactors and documentation.
- Important, Partial, Hidden, Visible are all radiobuttons
- Fixed bug where the Visualiser would end the race before the last boat had finished
- Refactored the visualiser and the mock to use the race finished status message
- Added and Changed many Javadocs
#story[877]
2017-05-22 03:51:14 +12:00
fjc40 de0abf94e0 Mock.Race:
Fixed an issue where boats sometimes sailed towards the wind when attempting to turn from bearing just under 360 degrees to a bearing just over 360 degrees.
This required an update to the boundary detection code.

Visualiser:
Appear to have fixed issue where clock didn't display correctly. Previous commit only fixed certain circumstances.

#story[873]
2017-05-20 00:18:42 +12:00
fjc40 c011ccb11b Did some minor refactoring of Mock module...
Added comments/documentation to most classes.
Cleaned up heaps of repeated code, dead code, redundant stuff, etc...

Mock.App:
Now actually exits the program if catastrophic errors occur, rather than silently doing nothing.

Mock.Constants:
Added race prestart and preparatory times.
Removed TEST_VELOCITIES.

Mock.PolarParser:
Now uses Bearing class.

Mock.Angle:
Now implements the Comparable interface.
Also supports .equals.

Mock.Azimuth and Bearing:
Can convert between them easily.

Mock.Boat:
Now uses Bearing, and has some helper functions like setVMG, calculateMetersTravelled(time), moveforwards(distance, time).

Mock.Marker:
Removed. This wasn't really used, and was redundant.

Mock.GPSCoordinate:
Moved a lot of helper GPS related functions into the GPSCoordinate class, instead of being scattered around the codebase.

Mock.Polars:
Polars now uses Bearing.

Mock.VMG:
Now uses Bearing.

Mock.Race:
Added a RaceStatusEnum member.
Added a RaceTypeEnum member.
Now uses Bearing/Azimuth.
Moved the message creation/sending into their own functions.
The RaceStatus updates correctly through out the race (Prestart, Warning, Preparatory, Started, Finished).

Network.RaceStatusEnum:
Added race status enum.

Network.RaceTypeEnum:
Added.
2017-05-19 16:12:47 +12:00
fjc40 a0468f251b Merge remote-tracking branch 'origin/story33-estimateTime' into sp4_s31_cleanups
# Conflicts:
#	mock/src/main/java/seng302/Model/Race.java
Resolved.
2017-05-18 23:41:17 +12:00
fjc40 aa7337dc6c Merge branch 'story31.2_alternateTack' into sp4_s31_cleanups
# Conflicts:
#	mock/src/main/java/seng302/Model/Race.java
Resolved conflict manually.
2017-05-18 17:16:06 +12:00
fjc40 d88c353213 Brought in some fixes from the story31.2_merge branch. 2017-05-18 17:03:52 +12:00
fjc40 cc54c92d5b Added Mock.Angle, Mock.Azimith, Mock.Bearing. These encapsulate the relevant angle type, to allow for better type safety (e.g., to avoid passing a bearing into an azimuth function).
Added more comments to Mock.Boat.
Moved calculateAzimuth to GPSCoordinate, from Boat.
2017-05-18 14:49:56 +12:00
cbt24 27d4040a54 Cleaned up updatePosition in Mock.Race to simplify time estimation.
#story[875]
2017-05-18 14:42:27 +12:00
fjc40 60458f0f7a Merge commit '7990ac9d2ee8c71d50606813e21a0674f442464f' into story31.2_alternateTack.
This commit (7990ac9d2e) was the commit from master that story49 was merged into.
Everything appears to be working.

# Conflicts:
#	mock/src/main/java/seng302/App.java
#	mock/src/main/java/seng302/Constants.java
#	mock/src/main/java/seng302/DataInput/RaceXMLReader.java
#	mock/src/main/java/seng302/DataInput/RegattaXMLReader.java
#	mock/src/main/java/seng302/Model/Boat.java
#	mock/src/main/java/seng302/Model/Event.java
#	mock/src/main/java/seng302/Model/Race.java
#	mock/src/test/java/seng302/Data/BoatDataTest.java
#	mock/src/test/java/seng302/Data/RaceDataTest.java
#	mock/src/test/java/seng302/Model/BoatTest.java
#	mock/src/test/java/seng302/Model/RaceXMLTest.java
#	visualiser/src/main/java/seng302/Controllers/StartController.java
#	visualiser/src/main/java/seng302/RaceXMLReader.java
Manually resolved conflicts. :(
2017-05-18 13:44:02 +12:00
zwu18 7d27a098ac Fixed wind direction code missing due to past merges (?)
#story[882]
2017-05-17 18:13:20 +12:00
fjc40 0c790c1721 Mock.Polars:
Was accidentally using testng in the PolarsTest. Changed it to junit.

#story[873]
2017-05-17 13:48:05 +12:00
fjc40 be9f19eae5 Mock.Polars:
Finished PolarsTest test cases.

Fixed a number of javadoc errors across the codebase.

#story[873]
2017-05-17 13:33:34 +12:00
David Wu f999967cd5 Implemented functionality for sparkline to update throughout race.
-Sparkline reads in initial boats in race.
-Sparkline updates throughout the race.
-Sparkline updates are displayed on GUI.

#story[876]
2017-05-16 17:13:52 +12:00
fjc40 00c9cb2c83 Mock.PolarParser:
Fixed some javadoc issues
2017-05-15 18:49:57 +12:00
fjc40 656212d06d Mock.Race:
Fixed an issue in updatePositions(...) where unconstrained bounds could be passed into the calculateVMG function (e.g., lower = -182391, upper = 188221), but they need to be in the interval [0, 360).

Mock.Polars:
Added more test cases. Still working on getting the assertions correct.
Refactored and bugfixed the calculateVMG(...) function. There were a few bugs (and ugly "fixes") because we didn't bother enforcing a strict interval on the lower and upper bound angles.
Also added a few more comments to explain the function better.

#story[873]
2017-05-15 18:39:38 +12:00
Joseph Gardner 5d34b49316 Merge branch 'master' into submission
# Conflicts:
#	mock/src/main/java/seng302/Model/Race.java
#	mock/src/test/java/seng302/Model/RaceTest.java
#	visualiser/src/main/java/seng302/Model/ResizableRaceCanvas.java
2017-05-15 16:08:46 +12:00
Fan-Wu Yang b065b8d9c7 Merged Mock49 and fixed bugs
- Error where mock would not read in the files when running from the jar.
- Error where the AC35 stream now no longer sends us packets with information that is set for 0 for boat location.
#story[881] #pair[fwy13, esa46
2017-05-15 15:49:38 +12:00
hba56 12b6f49f2e boats now bounce on the boundry
#pair[hba56, cbt24, jjg64]
 #story[873]
2017-05-15 15:21:45 +12:00
fjc40 572e54b076 Mock.Race:
An alternate tacking implementation during race simulate. Doesn't handle keeping the boats in-bounds, and sometimes has issues with landing directly on a mark.
Also seems to use wrong starting velocities (from the XML file).

#story[873]
2017-05-15 14:13:36 +12:00
Joseph Gardner 93c539b68b mock pom had the name visualiser 🤔 2017-05-15 11:42:42 +12:00
zwu18 0291726589 Added test for changing wind direction.
#story[882]
2017-05-15 02:10:44 +12:00
fjc40 f4d5df9df2 Mock.Polars:
Fixed a bug where calculateVMG was placing velocity into the VMG object, instead of speed.
Maybe fixed a bug when a bearingLowerBound which is greater than bearingUpperBound is provided.
Added another test case.

Mock.Constants:
Added knots to millimeters per second conversion factor.

Mock.Boat:
Added calculateDIstanceToNextMarker function, which returns the distance, in nautical miles, to the next mark.

Mock.Race:
Added wind direction as a race property.
Added wind speed as a race property.
The race status messages sent by Race now use Race's wind speed and direction.

#story[873]
2017-05-14 22:34:05 +12:00
fjc40 7f37dbbcb5 Mock.Race:
Usages of VMG.bearing now use the getBearing() function, as the member is now private.

#story[873]
2017-05-14 17:54:27 +12:00
fjc40 c2f487b06d Merge branch 'story31.2' of eng-git.canterbury.ac.nz:seng302-2017/team-7 into story31.2 2017-05-14 17:44:46 +12:00
fjc40 6f2c5d6c40 Mock.VMG:
made speed and bearing members private - had accidentally forget the visibility specifier.

Mock.Polars:
Added linear interpolation between speed values (e.g., if the wind speed is 15.9kn, it will interpolate between the 12kn and 16kn data). This allows for wind speeds less than 4kn (the lowest wind speed in the data file). It does not extrapolate anything for wind speeds larger than 30kn (the largest wind speed in the data file).
Also refactored some of the code into some interpolation functions.

#story[873]
2017-05-14 17:43:34 +12:00
hba56 3895172631 updated the race class to set heading for windward legs
#story[873]
2017-05-14 17:25:44 +12:00