82 Commits
Author SHA1 Message Date
Jessica Syder 1645933a94 Start in a nicer zoom.
#story[1301]
2017-09-28 15:31:59 +13:00
Jessica Syder 0aad5a1bd6 Missing button image and zoom limit changed.
#story[1301]
2017-09-28 15:00:05 +13:00
Jessica Syder f46f9b9bf5 Merge master in
#story[1301]
2017-09-28 14:52:30 +13:00
Jessica Syder 35b5228cc6 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into 1301_map_select 2017-09-28 14:43:35 +13:00
Jessica Syder bd0c0ac5ef Stylin'
#story[1301]
2017-09-28 14:43:14 +13:00
Jessica Syder 1196e853bf Stylin'
#story[1301]
2017-09-28 13:49:42 +13:00
Jessica Syder 7230cdf2a3 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into 1301_map_select 2017-09-28 13:06:12 +13:00
Jessica Syder edb0e1db2f Transparent maps.
- new ac35 map image
- existing maps transparent backgrounds

#story[1301]
2017-09-28 13:05:52 +13:00
Jessica Syder 31bb289723 Added button images in
- added button images
- cssd it a little

#story[1301]
2017-09-28 11:38:10 +13:00
Jessica Syder 9bb0fa6833 Arrows, Buttons and Title styling added to map selection.
- a title added
- some images made transparent
- basic css styling
- some colours added

#story[1301]
2017-09-27 22:42:01 +13:00
Jessica Syder 0659bc64c8 Arrows, Buttons and Title styling added to map selection.
- a title added
- some images made transparent
- basic css styling
- some colours added

#story[1301]
2017-09-27 22:38:24 +13:00
Jessica Syder 7d3ec940eb Merge branch 'story1297_sails' into 'master'
Story1297 sails && sails in and out collision issue

ACs:
 + Boats stop / slow after colliding when their sails are out
 + Boats with sails out and are slowing down can still collide
 + Visual representation of the sails
 + Sails are angled to depending on the wind

See merge request !60
2017-09-26 14:43:18 +13:00
Jessica Syder 915d61b9f3 Map can be zoomed out in birds eye view only to a specified distance.
#story[1312]
2017-09-25 12:35:46 +13:00
Jessica Syder ab49d62c0d Map can be zoomed in / out at all times.
- map can be zoomed when object is not selected

#story[1312]
2017-09-25 12:17:37 +13:00
Jessica Syder e64e6ddbdb Boat scaling is correct.
- scaling changes as a user zooms in or out to
- 3rd person view defaults to life size scale

#story[1312]
2017-09-25 11:41:42 +13:00
Jessica Syder f1c1fc7063 Race length is affected by slider value.
- modified constructor of a race event to take in a scale value
- race is scaled according to minutes selected on the slider
- applied minimal css styling
- playing around with more styling options
- bug exists with 1 minute races, to be fixed

#story[1323]
2017-09-24 22:56:14 +13:00
Jessica Syder 819cdc49ab Created a slider on the Host Game screen.
- slider has min and max minutes
- a label is updated as the slider is moved
- the value of the slider selection is saved
- slider resizes appropriately with the window

#story[1323]
2017-09-24 17:59:36 +13:00
Jessica Syder 908f31bcde Merge branches 'master' and 'zoomzoom' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into zoomzoom 2017-09-22 20:54:02 +12:00
Jessica Syder 86fc911f98 Minor changes to improve look of third person view.
#story[1312]
2017-09-22 13:32:52 +12:00
Jessica Syder 62535720d4 Removed commented out code.
#story[1312]
2017-09-22 13:04:42 +12:00
Jessica Syder fa6543a713 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into zoomzoom 2017-09-22 13:00:12 +12:00
Jessica Syder 1ecd2dd7b6 Zooming motion is more natural.
- added limits for zoom in, zoom out and when to change to birds eye
- zooming smoothed by adjusting pitch each zoom
- when zoom out limit is reached, view returns to original

#story[1312]
2017-09-22 12:59:44 +12:00
Jessica Syder 625eb62af2 Wrapped the tutorial text on the title fxml.
#story[1261]
2017-09-12 16:41:54 +12:00
Jessica Syder b808056567 Host boat isnt disappearing anymore (I think).
#story[1261]
2017-09-12 16:39:19 +12:00
Jessica Syder e664619a81 Tutorial is played with tutorial map.
#story[1261]
2017-09-12 16:23:11 +12:00
Jessica Syder 0cb008cef7 Removed a couple of old canvas lines.
#story[1261]
2017-09-11 23:17:36 +12:00
Jessica Syder 9bc36ba544 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into controllerSplit
# Conflicts:
#	racevisionGame/src/main/java/visualiser/Controllers/HostController.java
#	racevisionGame/src/main/java/visualiser/Controllers/MainController.java
#	racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java
#	racevisionGame/src/main/java/visualiser/Controllers/StartController.java
#	racevisionGame/src/main/java/visualiser/Controllers/TitleController.java
#	racevisionGame/src/main/resources/visualiser/scenes/raceView.fxml
#	racevisionGame/src/main/resources/visualiser/scenes/titleScreen.fxml
2017-09-11 23:09:48 +12:00
Jessica Syder c30391ef23 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into controllerSplit
# Conflicts:
#	racevisionGame/src/main/java/visualiser/Controllers/HostController.java
#	racevisionGame/src/main/java/visualiser/Controllers/MainController.java
#	racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java
#	racevisionGame/src/main/java/visualiser/Controllers/StartController.java
#	racevisionGame/src/main/java/visualiser/Controllers/TitleController.java
#	racevisionGame/src/main/resources/visualiser/scenes/raceView.fxml
#	racevisionGame/src/main/resources/visualiser/scenes/titleScreen.fxml
2017-09-11 23:07:53 +12:00
Jessica Syder 669a303e9b Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into controllerSplit
# Conflicts:
#	racevisionGame/src/main/java/visualiser/Controllers/HostGameController.java
#	racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java
#	racevisionGame/src/main/java/visualiser/Controllers/StartController.java
#	racevisionGame/src/main/java/visualiser/Controllers/hostgame.fxml
#	racevisionGame/src/main/java/visualiser/Controllers/lobbyHosting.fxml
#	racevisionGame/src/main/java/visualiser/Controllers/main.fxml
#	racevisionGame/src/main/java/visualiser/Controllers/raceView.fxml
2017-09-11 20:19:10 +12:00
Jessica Syder 108643b59d Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into controllerSplit
# Conflicts:
#	racevisionGame/src/main/java/visualiser/Controllers/HostGameController.java
#	racevisionGame/src/main/java/visualiser/Controllers/RaceViewController.java
#	racevisionGame/src/main/java/visualiser/Controllers/StartController.java
#	racevisionGame/src/main/java/visualiser/Controllers/hostgame.fxml
#	racevisionGame/src/main/java/visualiser/Controllers/lobbyHosting.fxml
#	racevisionGame/src/main/java/visualiser/Controllers/main.fxml
#	racevisionGame/src/main/java/visualiser/Controllers/raceView.fxml
2017-09-11 20:05:24 +12:00
Jessica Syder a123bfb7e8 Merge branch 'Story_76' into 'master'
Story 76

AC:  
Note: most sailing races take place on fairly standard courses: windward-leeward, triangular/Olympic, and so on. An (incomplete) list can be found at http://www.rya.org.uk/racing/race-officials/resource-centre/forms-data-diagrams-graphics/Pages/course-diagrams-other-graphics.aspx  
This story is related to Story 51 (generating course layouts). While 51 is concerned with orienting a course to the wind, this one relates to a library of common course layouts which could be adjusted before use by the method in 51   
  
  
  
 DOD:  
 Adheres to relevant architectural decisions.  
 Branch has latest version of master merged in.  
 All acceptance criteria sufficiently met.  
 mvn clean package with no errors.  
 All tests pass on CI.  
 Javadoc compiles without error. 1  
 Code passes our code review (see code quality standard).  
 New tests have been sufficiently written for new functions/classes/components.  
 Existing tests have been modified to correctly use new functions/classes/components.  
 Manual tests have been written and logged.  
 Related issues in the issue tracker should be linked to, and closed once merged.  
 DOD feature check carried out and successfully completed.  
 New step has been added to DOD feature check, if required.  
 All System.out.println() removed from program  

See merge request !39
2017-09-11 12:06:27 +12:00
Jessica Syder 14aaf26b73 Merge branch 'story40-zoom' into 'master'
40. [V] As Caleb or Gemma I'd like to zoom the view to follow a boat (my boat) around the course (revised).

Note: in this story we will select a boat and zoom the view to place the boat at the center of a display that shows only the boat's immediate surrounds. The default option will be to zoom on the player's boat.

Acceptance criteria:
- Any particular boat can be chosen (at any time during the race.)  
- When a boat is selected for zooming, the view should change to show the boat at the center, with the scale of the view increased.
- The view should remain this way until the boat is unselected, at which point it should revert to the usual display.
- Other information (e.g., the position list) may be removed from the zoomed view.
- Zoomed view follows selected boat as a third person mode
- There must be a keyboard option to zoom in on the player's boat_
- The zoom amount can be fixed (jump between zoom in and zoom out) or scrollable (like control-mousewheel scrolling.)

See merge request !38
2017-09-09 10:47:37 +12:00
Jessica Syder 1ed7ccf146 Minor changes preparing to merge in 3D
#story[1261]
2017-09-09 10:44:19 +12:00
Jessica Syder 6a302841c0 Minor changes preparing to merge in 3D
#story[1261]
2017-09-08 22:24:06 +12:00
Jessica Syder 0dff85006a Changes to code to use new controller structure.
- renamed javadoc referencing old controllers
- keybindings no longer need to be static
- finished lobby and lobbyhost controllers

#story[1261]
2017-09-08 22:07:16 +12:00
Jessica Syder a5050b8ea8 Adding back lost changes and finishing splitting last controllers.
- renamed fxml and their controllers to match
- removed old controllers
- finished lobby and lobbyhost controllers

#story[1261]
2017-09-08 18:08:58 +12:00
Jessica Syder a5d3434a70 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into controllerSplit
# Conflicts:
#	racevisionGame/src/main/java/visualiser/Controllers/MainController.java
2017-09-08 16:50:28 +12:00
Jessica Syder a2b3ba44c0 RaceController scene separating
- removed a lot of unecessary parameters
- simplified set up functions
- racecontroller works on its own now
- made all the scenes visible by default

#story[1261]
2017-09-07 22:47:45 +12:00
Jessica Syder 9f3cc53a63 Finished Arrow, Title and StartController scene splitting
- scenes do not load in at the same time
- scenes do not rely upon previous abstract controller class
- scenes are not a part of previous main controller class
- unecessary functions and code removed

#story[1261]
2017-09-07 21:40:10 +12:00
Jessica Syder 4a0d04d7ab Created new abstract Controller class with load methods.
- loadScene method to load into current stage
- loadPopupScene method to load into a new window
- icon added to popup windows
- load methods return Controller of the new scee
- KeyBindingsController extends new Controller class and works correctly

#story[1261]
2017-09-04 23:10:25 +12:00
Jessica Syder 1073113589 Merge branch 'master' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into controllerSplit 2017-09-04 15:31:52 +12:00
Jessica Syder 35c595adf8 Merge branches 'master' and 'storyD-3D' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into storyD-3D 2017-09-04 14:00:20 +12:00
Jessica Syder addaaf0de3 Merge remote-tracking branch 'remotes/origin/master' into C_keybindings 2017-09-04 13:23:55 +12:00
Jessica Syder e8977eb0c4 Merge branch '77_racexml_updates' into 'master'
Story 77 task 7 - update xml files at runtime

Task: [S] Adjust race XML so that you can modify the number of boats in a race.

When clients connect they are added to the participant list, and an updated race.xml is sent out.
When they disconnect/timeout, they are unassigned a boat and updated race.xml is sent out.

Also contains code for sending updated boats.xml and regatta.xml.

See merge request !34
2017-09-04 13:14:09 +12:00
Jessica Syder 85eb66d508 Keybindings can be saved and loaded, and work when Jar'd!
- trying to solve jar file reading issue
- learnt a lot about jars including their lack of file structure
- changed location of keybindings settings to outside of jar
- added new folder/file that is generated on first run

#story[1197]
2017-09-04 12:30:01 +12:00
Jessica Syder cfa6fc37e0 User modified keybindings are persistently saved
- Works on windows computers
- KeyFactory processes its own XML saving/loading
- Does not work with Jar yet
- Changed keyFactory to static temporarily to work with existing FXML loading architecture

#story[1197]
2017-09-03 20:44:27 +12:00
Jessica Syder 3fdfbd83e0 User can save, reset or cancel.
- Created a notification popups for errors
- Added functionality to save, cancel and reset buttons
- Key bindings are only saved if they're valid
- Added window close event
- Can not exit without saving correctly
- CSS to cancel, save and reset buttons to differentiate between key buttons
- Javadocd

#story[1197]
2017-09-01 14:29:18 +12:00
Jessica Syder 716a99aac7 Reset to default button is now functional.
- keybindings are reset to built in default
- the table is cleared and reloaded

#story[1197]
2017-08-31 22:58:35 +12:00
Jessica Syder 3e720a9e16 Modified key bindings can be saved to use in a race.
- new key bindings replace old new bindings on save
- javadoc save method and small updates

#story[1197]
2017-08-31 22:47:57 +12:00
Jessica Syder 278fb65852 Pressing ESC cancels the selected command's key from being replaced
- focus is shifted away on esc
- focus is shifted away after successful change

#story[1197]
2017-08-31 22:39:19 +12:00
Jessica Syder ce47b0d813 When a new key is bound other commands bound to this key are removed
- On binding new key existing keys are searched
- If key is in use the old one is removed
- ControlKey is updated with a placeholder key value

#story[1197]
2017-08-31 22:28:55 +12:00
Jessica Syder 2188ddc3a3 Fixed errors in making the keybinding replaceable.
- Changed KeyFactory to not be a singleton
- Simplified keyBindings initializer
- Modified and simplified keyListener
- Added method to copy existing keyState
- Changed button events
- Changed to newer lambda functions
- Modified updateKey method
- Left option for multiple keys bound to one command
- Updated and wrote new JavaDoc

#story[1197]
2017-08-31 21:59:28 +12:00
Jessica Syder 8250226bde Key bindings can be updated with any key.
- Changed key press from FXML key event to a listener
- UP, DOWN, ENTER keys now work
- Keys no longer change cells or press buttons
- Added placeholder buttons Cancel, Reset and Save
- Added some JavaDoc

#story[1197]
2017-08-31 15:00:37 +12:00
Jessica Syder ad0e26e882 Created scene to view/update current key bindings.
- Current key bindings are shown on buttons
- Added button action events to store the clicked button
- Added key press event to entire pane
- Button text is updated to display its key
- Added functionality to keyFactory to update key bindings
- CSS styling for some components

#story[1197]
2017-08-30 17:16:15 +12:00
Jessica Syder 3d953362a6 Merge branch 'story_61' into 'master'
Story 61

[Agilefant link](http://agilefant.cosc.canterbury.ac.nz:8080/agilefant302/qrq.action?q=story:1095)

```
Note: the boat should be permanently circled with a highlight (or something similar)
See: (http://learn.canterbury.ac.nz/mod/forum/discuss.php?d=213948). Contains boat request to join, and server response messages.

Acceptance criteria:

- The boat that responds to control keypresses is permanently highlighted on screen.
- No boat without a highlight responds to keypresses.
```

Works with either single player or multiplayer game (see HostController.hostGamePressed()).

The race.xml currently is not updated when players join/quit, so there are 6 boats by default, and any boats without playes will just sail off the side of the map.

- resolves #39 
- resolves #37 
- resolves #35 
- resolves #27 
- resolves #25 
- resolves #32 


See merge request !26
2017-08-16 00:00:08 +12:00
Jessica Syder 0558629dc6 Added luffing sails image.
- Created transparent gif of luffing sail
- Displayed image when sail is luffing
- Repositioned luffing sail

#story[1098]
2017-08-14 10:42:28 +12:00
Jessica Syder 8b1561cdc7 Fixed nullpointer when boat passes finish line.
- Added a condition in calculateBearingToNextMethod to avoid nullpointer
2017-08-13 16:08:14 +12:00
Jessica Syder 321dcde72f Implemented luffing sail without image (yet).
- Added sailsLuff image property
- Displayed luffing sail in correct position and angle

#story[1098]
2017-08-10 12:49:00 +12:00
Jessica Syder ce973fecfe Sails are displayed correctly for all wind and active boat directions.
- Figured out the different situations that can occur using accurate points of sail
- Mathed out the rotation angle for each situation
- Manual testing carried out by running simulations
- Manual testing carried out using pen and paper

#story[1098]
2017-08-09 21:48:17 +12:00
Jessica Syder ace1252c1d Fixed sails so they behave correctly
- Changed sail angle calculations back
- Luffing currently displays no sail as a temporary representation of sails in

#story[1098]
2017-08-07 17:40:21 +12:00
Jessica Syder 7c5670f8c2 Sails are displayed on first boat in a race. Optimised imports.
- Implemented drawSails method
- Sail position is displayed and updated using a boat's heading
- Sails conform to 'Points of sail'
- Javadoc'd new method and tidied up existing
- Sped up track point frequency (visualiserBoat class)
- Optimised imports (any other classes changed)
- A lot of canvas drawing and sail rotating issues were discovered and eventually overcome along the way. Using a sail image to draw and rotate on the existing canvas rather than a JavaFX shape on a new canvas was the final decision.

#story[1098]
2017-08-07 12:20:52 +12:00
Jessica Syder 9eaf24e699 Fixed title screen having whitespace on different screen resolutions.
- Title screen has no white space on edges
- Main controller now anchors title to corners of main window

#story[1087] #pair[fjc40, jam339]
2017-07-27 14:54:56 +12:00
Jessica Syder 402df18b71 Merge remote-tracking branch 'remotes/origin/master' into css 2017-07-27 14:31:33 +12:00
Jessica McAuslin 4ba9c6b774 Added a pretty title screen to the application.
- Created a GUI title screen
- Drew images to be display on the title
- Created controller for the title
- Changed visualiser main to initially display title
- Added functionality for host button

#story[1087]
2017-07-24 17:38:46 +12:00
Jessica McAuslin 6e841f180d Spelling errors fixed. 2017-06-28 21:24:20 +12:00
Jessica McAuslin cf0adb8511 Fixed JavaDoc, spelling errors, and redundant classes
- Removed some default templates (eg: created by X)
- Wrote JavaDoc for classes that had none
- Made JavaDoc more clear for classes
- Linked JavaDoc to other classes
- Minor spelling errors fixed
- BoatInRace and BoatInRaceTest commented out (to be removed)

#story[1003]
2017-06-28 20:37:01 +12:00
Jessica McAuslin 2bbcb10458 Removed unused classes and imports
- Removed references to Constants class from other classes and tests
- ArrowController, Constants, Regatta removed
- Removed imports from various classes no longer used

#story[1003]
2017-06-26 22:29:30 +12:00
Jessica McAuslin 6ba1aca074 Annotations moved to its own class
- Annotations class sets annotations to be displayed
- removed annotation implementation from RaceController
- deconstructed previous annotation method
- fixing RaceController code smells

#story[1003]
2017-06-26 21:36:44 +12:00
Jessica McAuslin c027a0ee6e Sparkline moved to its own class
- Sparkline class creates and modifies sparkLine chart
- removed sparkline implementation from RaceController
- fixing RaceController code smells

#story[876, 1003]
2017-06-25 19:59:59 +12:00
Jessica McAuslin fdeec19b20 Wind Arrow direction fixed
- arrow shows wind direction as from instead of to
- removed old unused displayArrow method
- renamed displayFancyArrow to displayWindArrow
- removed coordinates parameter not used

#story[882, 1003]
2017-06-24 13:41:03 +12:00
Jessica McAuslin f44ea57d11 Merge branch 'master' into sprint4_master 2017-06-24 12:58:54 +12:00
Jessica McAuslin e9ecdf5cbc Merge branch 'noDependencyArrow' into 'sprint4_master'
story48

sprint4_master <- noDependencyArrow if DoD == true

See merge request !8
2017-05-23 12:52:51 +12:00
Jessica McAuslin ef9d8884d4 Sparkline methods Javadoc'd
- createSparkline
- updateSparkline

#story[876]
2017-05-19 21:39:25 +12:00
Jessica McAuslin 3f2ad8886e Fixed FPS issues and beautified sparkline display
- set upper and lower bounds for axis height
- formatted Y axis to show/hide necessary info
- reduced some looped actions
- added conditions for the first leg
- all boats start in 'last' place

#story[876]
2017-05-19 21:21:00 +12:00
Jessica McAuslin 2e1f8a2e9a Lowered frequency sparkline updates
- sparkline only updates when a boat passes a point
- all lines start in the middle
- slow frame rate issue resolved

#story[876]
2017-05-17 19:15:28 +12:00
Jessica McAuslin 7647a93d7a Implemented an updating sparkline
- sparkline is set with X number of lines
- sparkline height fits X lines
- lines are updated regularly
- size is adjusted relevant to plotted points

#story[876]
2017-05-15 20:59:16 +12:00
Jessica McAuslin d294ee7994 Deleted redundant and deprecated code (Visualiser)
- References to deprecated objects replaced
- Deprecated Constants class removed
- general redundant code deleted
2017-05-11 15:44:58 +12:00
Jessica McAuslin 43757b34d1 General code tidy up (Visualiser)
- access modifiers adjusted
- unused declarations removed
- spelling fixes
- removed redundant code
2017-05-08 20:45:00 +12:00
Jessica McAuslin 2d983eccfd General code tidy up
- access modifiers adjusted
- unused declarations removed
- spelling fixes
- removed redundant code
2017-05-08 20:21:20 +12:00
Jessica McAuslin 2bf264c6bb Populated starting boat table
- boat names shown in first column
- boat abbrevs. shown in second column

#story[760]
2017-04-06 19:29:57 +12:00
Jessica McAuslin 58cae682ab Merge branch 'story27' of https://eng-git.canterbury.ac.nz/seng302-2017/team-7 into story27 2017-04-06 16:31:54 +12:00
Jessica McAuslin 44fac754a7 Created screen for showing starters
- modified start pane
- added table to populate with starting boats

#Story[760]
2017-04-06 16:31:12 +12:00