b9d696ef12
Sparkline has a set x-axis now to prevent sparkline constantly re-adjusting axis.
zwu182017-05-21 23:06:51 +12:00
4b2e90f54b
can now toggle the boats time on and off #story[878]
hba562017-05-20 21:04:03 +12:00
a24dda2fd8
boats have an annotation beside them that shows time since last mark passed #story[878]
hba562017-05-20 20:40:08 +12:00
9eb4e3daea
boats now calculate the time since last mark -the raceclock is passed around so that the time can be tracked -time from start to mark 1 is wrong #story[878]
hba562017-05-20 17:22:52 +12:00
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.
fjc402017-05-20 00:18:42 +12:00
81ed07330b
Fixed the bug where the race clock wasn't visible some of the time. It appears to have been due to a threading/javaFX thread issue with prop1.bind(prop2).
fjc402017-05-19 21:50:14 +12:00
c011ccb11b
Did some minor refactoring of Mock module...
fjc402017-05-19 16:12:47 +12:00
044d786043
Added Refactors that the Audit suggested - Created AC35RaceStatus class - Deleted wait loop into a Thread.sleep() - Deleted Entirely commented out class.... - Deleted duplicate draw that appeared again #story[873]
Fan-Wu Yang2017-05-19 01:00:05 +12:00
a0468f251b
Merge remote-tracking branch 'origin/story33-estimateTime' into sp4_s31_cleanups
fjc402017-05-18 23:41:17 +12:00
aa7337dc6c
Merge branch 'story31.2_alternateTack' into sp4_s31_cleanups
fjc402017-05-18 17:16:06 +12:00
d88c353213
Brought in some fixes from the story31.2_merge branch.
fjc402017-05-18 17:03:52 +12:00
eba2eb3cd6
Boats no longer change colour during a race and fixed the sparklines for the boats to be in the correct position #story[876]
Joseph Gardner2017-05-18 16:39:16 +12:00
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.
fjc402017-05-18 14:49:56 +12:00
27d4040a54
Cleaned up updatePosition in Mock.Race to simplify time estimation.
cbt242017-05-18 14:42:27 +12:00
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.
fjc402017-05-18 13:44:02 +12:00
74d3996f6c
Merge remote-tracking branch 'origin/story34_v2' into story34_v2
zwu182017-05-17 20:08:31 +12:00
f19a543b68
Changed line appearance and colour. -Line displayed will no longer plot a point every update. -Line colours are based on the colours displayed in the race. -Race colours defined in ResizableRaceCanvas have been used for the lines. -As boats change colour depending on placement (unintended), the lines will also do this.
zwu182017-05-17 20:04:03 +12:00
2929019689
Temporary ignored offlineConnectionStatusOffline due to CI issue.
zwu182017-05-17 18:23:20 +12:00
7d27a098ac
Fixed wind direction code missing due to past merges (?)
zwu182017-05-17 18:13:20 +12:00
0c790c1721
Mock.Polars: Was accidentally using testng in the PolarsTest. Changed it to junit.
fjc402017-05-17 13:48:05 +12:00
be9f19eae5
Mock.Polars: Finished PolarsTest test cases.
fjc402017-05-17 13:33:34 +12:00
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.
David Wu2017-05-16 17:13:52 +12:00
00c9cb2c83
Mock.PolarParser: Fixed some javadoc issues
fjc402017-05-15 18:49:57 +12:00
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).
fjc402017-05-15 18:39:38 +12:00
7990ac9d2e
Merge branch 'Story49Vis' into 'master'
Fan-Wu Yang2017-05-15 15:58:21 +12:00
c0bc2b2c1e
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]
Fan-Wu Yang2017-05-15 15:53:49 +12:00
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
Fan-Wu Yang2017-05-15 15:49:38 +12:00
405f01c900
rearranged dependency order (hopefully this makes the ci download it properly)
Joseph Gardner2017-05-15 15:38:28 +12:00
12b6f49f2e
boats now bounce on the boundry #pair[hba56, cbt24, jjg64] #story[873]
hba562017-05-15 15:21:45 +12:00
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).
fjc402017-05-15 14:13:36 +12:00
0291726589
Added test for changing wind direction.
zwu182017-05-15 02:10:44 +12:00
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.
fjc402017-05-14 22:34:05 +12:00
7f37dbbcb5
Mock.Race: Usages of VMG.bearing now use the getBearing() function, as the member is now private.
fjc402017-05-14 17:54:27 +12:00
c2f487b06d
Merge branch 'story31.2' of eng-git.canterbury.ac.nz:seng302-2017/team-7 into story31.2
fjc402017-05-14 17:44:46 +12:00
6f2c5d6c40
Mock.VMG: made speed and bearing members private - had accidentally forget the visibility specifier.
fjc402017-05-14 17:43:34 +12:00
3895172631
updated the race class to set heading for windward legs #story[873]
hba562017-05-14 17:25:44 +12:00
f011b4117e
Added and removed javadoc tests that were making errors in the code, #story[881]
Fan-Wu Yang2017-05-14 16:24:17 +12:00
a7a065825a
Fixed thread issue on windows - Added a Platform.runLater on the Visualiser loops so that the notifying observers do not try to call it, where it is a non java-fx loop #story[881]
Fan-Wu Yang2017-05-14 16:18:11 +12:00
156e0bfdd5
removed blocking queue that somehow appeared again - Removed blolcking queue from Visualiser Input that had appeared miraculously #story[881]
Fan-Wu Yang2017-05-14 16:14:45 +12:00
294627074d
Commented out throws in the BinaryMessageDecoder for messages we ignore as they were not errors and instead were causing the program to stop if they're received - commented out throw from default, chatter text, yachactioncode, yachteventcode, displaytextmessage states #story[881]
Fan-Wu Yang2017-05-14 16:13:37 +12:00
b2d9e44d03
Deleted Unecessary code - StreamedRace no longer sets the positions of boats - The Visualiser has blocking queue removed - The Regatta XML Reader not longer has a variable to the deleted Regatta class #story[881]
Fan-Wu Yang2017-05-14 15:36:40 +12:00
30beef29ba
Deleted Regatta XMl reading that is deprecated - No longer in use XML reader has been deleted #story[881]
Fan-Wu Yang2017-05-14 15:29:52 +12:00
3570e1283f
Deleted Race class - Delete dependency on Race class from Streamed Race as there is no need for extention after the split of Visualiser and Mock. #story[881]
Fan-Wu Yang2017-05-14 15:24:19 +12:00
d4be901b1a
Merge remote-tracking branch 'origin/story31.2' into story31.2
hba562017-05-14 15:16:18 +12:00
f8c6e500fb
Deleted deprecated Race XML reader - Deleted RaceXMLReader class - Deleted Corresponding Tests #story[882]
Fan-Wu Yang2017-05-14 15:14:32 +12:00
2dc17a688f
Mock.Polars: Fixed a bug where duplicate estimates could be added to the Polar table (this happened when the angle was 0, so the "negative" angle became 360, which is equivalent). Now has a list of angle values for each wind speed, rather than checking if Pair<WindSpeed, WindAngle> exists in the map. calculateVMG now uses linear interpolation between two adjacent angles (e.g., if data file contains angles 0, 30, 45, etc.. it can interpolate and find an optimal VMG angle between those, for example, 17 degrees). Added a third test for when we provide a wind speed which is lower than any wind speed values in the Polars table. Still need to actually calculate correct VMG values by hand.
fjc402017-05-14 01:12:36 +12:00
6f9249e238
Mock.PolarParser. Fixed a bug where it would only parse the first half of each row. Mock.Polars. addEstimate also builds up a unique list of angles from the data file, instead of dynamically generating that when calculating a VMG. addEstimate also adds estimates with negative angles (e.g., 45deg+windSpeed+boatSpeed, and -45deg+windSpeed+boatSpeed). calculateVMG now accepts an upper and lower bounds to the allowed VMG bearing it returns - this way you can get VMGs only within a certain angle interval (e.g., [16, 99] degrees). Also fixed some bugs in calculateVMG where it wasn't actually using the angles and such correctly. Improved the test case slightly, but still need to calculate correct values by hand.
fjc402017-05-13 17:10:06 +12:00
fb6420524d
Adding a parameter to test command to debug missing library
Erika Savell2017-05-13 11:57:47 +12:00
63f7857e2f
Changed dependency version (repository pls download properly)
Joseph Gardner2017-05-12 12:59:53 +12:00
dd1308808a
updated the race class to set heading based on the vmg not just the end of a leg -race class now stores the boundary -updatePositions now checks if the boat is with the course -update positions now sets heading and speed based on the vmg -updated azimuth to now accept a start and finish gps rather that finding it itself -added a calculatebearingtodestination method that finds the azimuth to the dest from the boat -updated boat tests to use the new azimuth method #story[873]
hba562017-05-12 12:49:02 +12:00
a91bc459f7
Implemented functionality for mock to parse marker boats throughout race. -Added getter to CompoundMark to get the Mark value.
zwu182017-05-12 02:10:17 +12:00
602bc0686e
Changed public functions in the RaceXMLReader to make a new list every time and reassign the list to avoid duplicates in a list. #story[873]
Joseph Gardner2017-05-11 14:55:50 +12:00
8c0c03dcf2
Fixed tests that were reading the file again making them fail. #story[873]
Joseph Gardner2017-05-11 14:49:17 +12:00
a13899b6a7
Implemented and tested to check if a point is inside or outside of a boundary using a ray tracing algorithm. The function is public static for a GPSCoordinate and takes a list of GPSCoordinates and the comparing coordinate. #story[873]
Joseph Gardner2017-05-11 14:40:24 +12:00
3b2f99b7d7
Fixed Polars.calculateVMG function - it was using non-existent keys in some circumstances.
fjc402017-05-11 11:58:02 +12:00
238b97c016
Added a VMG class (has a speed and bearing). Added the Polars.calculateVMG function, which calculates the VMG from a given wind angle, wind speed, and angle to destination. In may not be completely correct at the moment, so it's a work in progress.
fjc402017-05-11 11:30:18 +12:00
081a7d5666
Attempting to solve boats not apearing problem
Erika Savell2017-05-10 22:23:49 +12:00
ce5a726153
Adjusted wind direction changing angles to a smaller angle.
zwu182017-05-10 22:20:00 +12:00
ffa3d530ae
Event takes string and sets time of race
Erika Savell2017-05-10 21:46:24 +12:00
8390b19299
Created methods to initialise and change wind direction throughout race. -Method initialiseWinDir assigns an unsigned short value to wind direction. -Method changeWindDir randomly changes the wind direction throughout race. -Issue found regarding showing wind direction.
zwu182017-05-10 21:37:18 +12:00
693da8a82a
Removed some unneccessary code and comments from PolarParser.parse(...). Fixed a bug where the polar parser would attempt to insert (wind speed, windspeed, windangle) instead of (windspeed, windangle, boatspeed). Removed some unused constructors from RaceXMLReader, and fixed a bug where it wouldn't actually use the polar table correctly. Boat's constructor now expects a Polars table. Added some comments to the Polars class, and specified the HashMap's template parameters Added PolarsTest - which needs to be implemented properly when the VMG calculations have been added.
fjc402017-05-10 17:21:18 +12:00
91b1773703
Commented out obsolete tests, may be useful if refactored.
cbt242017-05-10 17:02:25 +12:00
f31a987787
Reads BoatDataSource into StreamedCourseXMLReader so the latter can function as a single source of static information for the race. - Mock.StreamedCourseXMLReader populates participant and mark list from BoatDataSource - Added CompoundMarker class to accommodate Mark data from Boat XML - Had to check for Yacht type in Visualiser.BoatXMLReader - Added a missing coordinate value to raceTest.xml - Marker class still exists due to large number of tests, which should be transitioned to CompoundMark - IMPORTANT: race is no longer functional
cbt242017-05-10 16:56:21 +12:00
3bc8ad0a07
Arrow is now displayed on screen more vividly, the arrow can be customised to a different colour scheme if needed. #story[882]
Joseph Gardner2017-05-10 16:30:32 +12:00
045e69a637
Deleted and Fixed some redundant code - Deleted some unused functions - Fixed NullPointerException for Marks #story[881] #pair[fwy13,jam339]
Fan-Wu Yang2017-05-10 15:51:55 +12:00
4f8d6b14d4
updated app class to read the polar csv and pass it off to its parser #story[900]
hba562017-05-10 15:46:01 +12:00
245914a69e
added the polars csv #story[900]
hba562017-05-10 15:26:43 +12:00
e67f8fae4b
parser updated for the hashmap polars #pair[hba56, fjc40] #story[900]
hba562017-05-10 15:24:46 +12:00
1434892b51
Merge branch 'story31.1' of eng-git.canterbury.ac.nz:seng302-2017/team-7 into story31.1
fjc402017-05-10 15:12:06 +12:00
aeee8ca748
Added polar data file. Added PolarParse class - currently commented out as it depends on polar table class.
fjc402017-05-10 15:11:51 +12:00
f518c52c7b
changed the way we store polars -removed polar class -added in new hasmap polars class -updated boat class to the changes #story[900]
hba562017-05-10 15:10:03 +12:00
9e19ddb1f4
Story 49 Marks move with boat location. - Commented out blocking array as it was unecessary - Added Observable list for markers to the race canvas - Added SourceId's to Marker - Added updating Markers from the Streamed Race loop. #story[881] #pair[fwy13, jam339]
Fan-Wu Yang2017-05-10 14:45:42 +12:00
1f554648ef
changed all polar values to doubles and added a empty constructor #story[900]
hba562017-05-10 14:41:05 +12:00
a4480f3ccf
removed the get best heading method as it was incorrect and not related to this story #story[900]
hba562017-05-10 14:25:06 +12:00