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]
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
package seng302.Model;
|
||||
|
||||
|
||||
import javafx.scene.Node;
|
||||
import javafx.scene.layout.Pane;
|
||||
import javafx.collections.ObservableList;
|
||||
import javafx.scene.paint.Color;
|
||||
import javafx.scene.paint.Paint;
|
||||
@@ -35,6 +37,7 @@ public class ResizableRaceCanvas extends ResizableCanvas {
|
||||
private final List<Marker> markers;
|
||||
private final RaceDataSource raceData;
|
||||
private Map<Integer, Color> boatColours = new HashMap<>();
|
||||
private Node arrow;
|
||||
|
||||
private RaceClock raceClock;
|
||||
|
||||
@@ -147,6 +150,13 @@ public class ResizableRaceCanvas extends ResizableCanvas {
|
||||
gc.restore();
|
||||
}
|
||||
|
||||
private void displayFancyArrow(GraphCoordinate coordinate, double angle) {
|
||||
angle = angle % 360;
|
||||
if (arrow != null && arrow.getRotate() != angle) {
|
||||
arrow.setRotate(angle);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Rotates things on the canvas Note: this must be called in between gc.save() and gc.restore() else they will rotate everything
|
||||
*
|
||||
@@ -247,9 +257,9 @@ public class ResizableRaceCanvas extends ResizableCanvas {
|
||||
|
||||
//display wind direction arrow - specify origin point and angle - angle now set to random angle
|
||||
if (raceData instanceof StreamedCourse) {
|
||||
displayArrow(new GraphCoordinate((int) getWidth() - 40, 40), ((StreamedCourse) raceData).getWindDirection());
|
||||
displayFancyArrow(new GraphCoordinate((int) getWidth() - 40, 40), ((StreamedCourse) raceData).getWindDirection());
|
||||
} else {
|
||||
displayArrow(new GraphCoordinate((int) getWidth() - 40, 40), 150);
|
||||
displayFancyArrow(new GraphCoordinate((int) getWidth() - 40, 40), 150);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -355,6 +365,10 @@ public class ResizableRaceCanvas extends ResizableCanvas {
|
||||
));
|
||||
}
|
||||
|
||||
public void setArrow(Node arrow) {
|
||||
this.arrow = arrow;
|
||||
}
|
||||
|
||||
public void setRaceClock(RaceClock raceClock) {
|
||||
this.raceClock = raceClock;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user